Создать письмо в outlook из 1с
Программное создание писем в Outlook из 1С с подписью и вложением (сгенерировав Excel-файл с листами из нескольких ТабличныхДокументов) используя COM-объект. Как избавиться от рутинного создания однотипных писем.
В качестве шаблона для тела письма использую макет с HTML-разметкой, где можно с помощью параметров задать значения полям.
Заполняю этот шаблон - делаю из него TXT и присваиваю телу письма в Outlook (свойство - HTMLBody)
Минимальная версия платформы - 8.3.12, связана с использованием объекта "ПакетОтображаемыхДокументов", через него создается вложение Excel-файл с несколькими листами (вы можете просто закомментировать код)
И вишенка - это формирование стандартной подписи установленной у пользователя в Outlook. В русском гугле я не нашёл рабочего способа, предлагали просто дикие вещи.
Подпись формируется не при создании письма, а немного. позже, поэтому чтобы она всё же подтянулась - необходимо передать управление Outlook'у до того как мы притронемся к содержимому "HTMLbody", после этого подпись уж точно будет сформирована - её можно прикрепить к вашему произвольному телу письма. Если тело письма по вашему шаблону должно быть пустым (просто с подписью) - то такая хитрость не нужна (просто не трогаете HTMLbody).
Как убрать предупреждение:
Файл -> Настройки -> Центр управления безопасностью -> Параметры центра управления безопасностью -> Программный доступ -> Никогда не предупреждать о подозрительной активности.
Тестирование проводилось на платформе 8.3.13.1513, запуск через файл-открыть.
Описание работы обработки: На форме обработки одна кнопка - "сформировать письмо" - выполняет демонстрационную роль, будет создано письмо с одним вложением - Книга.XLSX (файл будет сохранен в папку TEMP - местоположение файла будет выведено через "сообщить()"), в теле письма будет таблица построенная с помощью HTML-разметки и если у вас установлена подпись - то она будет прикреплена. Обработка не отправляет письма, она только их формирует, письма отправляются пользователем после того как он убедится что всё в порядке.
Применение: Данные обработка демонстрирует как можно несложно автоматизировать создание рутинных однотипных писем. Возможность создания какого-то общего шаблона с каким-либо автозаполнением - получателей, темы письма, тела письма, прикрепление вложений в зависимости от задачи/входных данных.
Отправка писем из 1С Предприятия – одна из самых необходимых функций, отсутствующая в штатном функционале платформы. Один из вариантов реализации – это подключение к MS Outlook по технологии OLE. В статье приведены примеры создания писем, событий и задач в MS Outlook из 1С. Автоматическое создание событий и задач используется не часто, но порой бывает очень удобно.
Создание события
Код 1C v 7.x
Создание задачи
Код 1C v 7.x
Похожие FAQ
Еще в этой же категории
Как в excel сохраненный из 1С вставить новый лист? 15
Я думаю, все сталкивались с однолистовым excel файлом из 1С, у которого на первый взгляд, нет возможности добавить листы. Все не так страшно - их просто скрыли или, что чаще всего - даже не отображали (обусловлено созданием файла из стороннего прил Как сформировать документ в Word из 1С? (Active Document) 14
ВНИМАНИЕ! При использовании кодов описанных ниже, уберите символ _ Давайте рассмотрим на примерах как это делается! =) Мне известно 2 способа: 1. Путем замены шаблонного текста в макете Wordа. 2. Путем вставки текста с помощью закладок в Wo Экспорт и Импорт данных 1С - Microsoft Excel 12
Экспорт Процедура ОсновныеДействияФормыЭкспорт(Кнопка) - выгружает из указанного справочника данные в режиме экспорта в файл в формате Microsoft Excel с указанным именем, используя преобразование данных к типу число и типу строка; Процедура Основ Преобразование XLS в MXL 10
Конвертация таблиц из Excel в MXL - скачать Converter Excel v MXL: Для 8.х - Для 7.7 - // Выбор файла Microsoft Excel Procedure FileNameStartChoice(Element, StdProcessing) StdProcessing = False; DialogFile = New FileDialog(FileDialogMode. Работа с MS Word через OLE 10
В качестве примера использования можно указать вот такую ситуацию: в зависимости от типа клиента (договора, документа и т.п) формируются разные тексты договоров с разным количеством таблиц. В реальности, конечно должены использоваться и макет и опис Посмотреть все в категории Работа с Microsoft Office и OpenOffice
Сегодня поговорим о работе с известной программой Microsoft Outlook из 1С. Сначала будет теория, а в конце несколько практических примеров. Я не буду описывать все существующие объекты, свойства и методы, так как во-первых, их очень много, а во-вторых, нет такой необходимости — все подробно описано на сайте MSDN (там правда на английском, но для понимания достаточно самого базового уровня или Google Translate-та).
Любая работа с Outlook из 1С начинается, естественно, с создания COM-объекта.
Все задачи связанные с Outlook-ом разделяются на две категории. Первая — нам нужно что-то создать в Outlook (письмо, задачу, событие и тд.). Вторая — нам нужно что-то из Outlook получить (письма, контакты, события и тд.).
Создание объектов в Outlook из 1С
Какие либо объекты в Outlook создаются при помощи метода «CreateItem», параметром к которому служит тип создаваемого объекта:
Как уже говорилось выше, я не буду описывать свойства, методы и события этих объектов, взамен я приведу ссылки на подробные описания этих объектов (на английском, чтобы увидеть свойства, методы или события выбранного объекта, нужно ткнуть на соответствующий пункт в меню слева):
Ниже будет несколько примеров создания различных объектов Outlook из 1С.
Импорт данных из Outlook в 1С
Импорт данных из Outlook осуществляется достаточно просто и будет в примере ниже, есть несколько вещей которые помогут в реализации любой задачи связанной с импортом из Outlook:
- любой элемент Outlook имеет уникальный EntryID (48 символов);
- любой элемент Outlook имеет поле MessageClass (строка, возможные варианты: «IPM.Note», «IPM.Task»,»IPM.Contact», «IPM.Activity», «IPM.Appointment»);
- любой элемент Outlook имеет коллекции ItemProperties и UserProperties — стандартные и пользовательские свойства (нумерация с нуля и единицы соответственно);
- при импорте данных выскочит окно, запрашивающее разрешение на доступ к данным, доступ можно разрешить, но не более чем на 10 минут (т.е. через 10 минут окно появится снова), существуют программы, которые автоматически нажимают нужные кнопки в этом окне;
- при импорте данных пустая дата выглядит так «45010101», если попытаться записать такую дату в базу — произойдет ошибка, это нужно учитывать и заменять дату на «00010101».
Все возможные методы, свойства и события NameSpace Object (главный элемент иерархии каталогов Outlook, см. пример) подробно описаны на сайте MSDN (на английском).
Создание письма в Outlook из 1С
Плавно переходим к примерам, напомню, что в примерах, я пренебрег необходимыми проверками и обработками ошибок, оставив только суть.
Отправка писем из 1С Предприятия – одна из самых необходимых функций, отсутствующая в штатном функционале платформы. Один из вариантов реализации – это подключение к MS Outlook по технологии OLE. В статье приведены примеры создания писем, событий и задач в MS Outlook из 1С. Автоматическое создание событий и задач используется не часто, но порой бывает очень удобно.
Создание события
Код 1C v 7.x
Создание задачи
Код 1C v 7.x
Похожие FAQ
Еще в этой же категории
Как в excel сохраненный из 1С вставить новый лист? 15
Я думаю, все сталкивались с однолистовым excel файлом из 1С, у которого на первый взгляд, нет возможности добавить листы. Все не так страшно - их просто скрыли или, что чаще всего - даже не отображали (обусловлено созданием файла из стороннего прил Как сформировать документ в Word из 1С? (Active Document) 14
ВНИМАНИЕ! При использовании кодов описанных ниже, уберите символ _ Давайте рассмотрим на примерах как это делается! =) Мне известно 2 способа: 1. Путем замены шаблонного текста в макете Wordа. 2. Путем вставки текста с помощью закладок в Wo Экспорт и Импорт данных 1С - Microsoft Excel 12
Экспорт Процедура ОсновныеДействияФормыЭкспорт(Кнопка) - выгружает из указанного справочника данные в режиме экспорта в файл в формате Microsoft Excel с указанным именем, используя преобразование данных к типу число и типу строка; Процедура Основ Преобразование XLS в MXL 10
Конвертация таблиц из Excel в MXL - скачать Converter Excel v MXL: Для 8.х - Для 7.7 - // Выбор файла Microsoft Excel Procedure FileNameStartChoice(Element, StdProcessing) StdProcessing = False; DialogFile = New FileDialog(FileDialogMode. Работа с MS Word через OLE 10
В качестве примера использования можно указать вот такую ситуацию: в зависимости от типа клиента (договора, документа и т.п) формируются разные тексты договоров с разным количеством таблиц. В реальности, конечно должены использоваться и макет и опис Посмотреть все в категории Работа с Microsoft Office и OpenOffice
Отправка писем из 1С Предприятия – одна из самых необходимых функций, отсутствующая в штатном функционале платформы. Один из вариантов реализации – это подключение к MS Outlook по технологии OLE. В статье приведены примеры создания писем, событий и задач в MS Outlook из 1С. Автоматическое создание событий и задач используется не часто, но порой бывает очень удобно.
Создание события
Код 1C v 7.x
Создание задачи
Код 1C v 7.x
Похожие FAQ
Еще в этой же категории
Как в excel сохраненный из 1С вставить новый лист? 15
Я думаю, все сталкивались с однолистовым excel файлом из 1С, у которого на первый взгляд, нет возможности добавить листы. Все не так страшно - их просто скрыли или, что чаще всего - даже не отображали (обусловлено созданием файла из стороннего прил Как сформировать документ в Word из 1С? (Active Document) 14
ВНИМАНИЕ! При использовании кодов описанных ниже, уберите символ _ Давайте рассмотрим на примерах как это делается! =) Мне известно 2 способа: 1. Путем замены шаблонного текста в макете Wordа. 2. Путем вставки текста с помощью закладок в Wo Преобразование XLS в MXL 10
Конвертация таблиц из Excel в MXL - скачать Converter Excel v MXL: Для 8.х - Для 7.7 - // Выбор файла Microsoft Excel Procedure FileNameStartChoice(Element, StdProcessing) StdProcessing = False; DialogFile = New FileDialog(FileDialogMode. Универсальная функция для чтения данных из Excel в 1С 3
Иногда требуется разобрать данные из Excel в 1С. Я считаю что легче и быстрей поместить все данные в ТаблицуЗначений и уже там ими манипулировать. Пример 2-х функций которые я использую: ИзExcelВТаблицу – Читает Excel в ТаблицуЗначений ЭлементСп Пример работы с общим макетом типа ActiveDocument в клиент-серверном варианте 3
//********************************************************************************** //получаем макет на сервере, сохраняем в файл и передаем на клиента НаСервере Функция ПолучитьДанныеМакета() АдресХранилища = Новый УникальныйИдентификатор Посмотреть все в категории Работа с Microsoft Office и OpenOffice
Читайте также: