Публикации. Публикации Получение почты в 1с 8.3

У разработчиков на платформе 1С иногда возникает задача по взаимодействию системы 1С: Предприятие с различными почтовыми программами и протоколами.
1С Предприятие 8.0 имеет довольно удобные средства для отправки сообщений, импорта писем из почтового клиента в справочник или другой объект конфигурации,
работы с MAPI, SMTP или POP3.

При работе с почтой разделяют два способа доступа к почтовому ящику, почтовому клиенту:

объект "Почта" и объект "Интернет почта", каждый из объектов имеет свои достоинства.

Почта - предоставляет доступ к почте через встроенный почтовый клиент, работает по технологии MAPI.

Интернет почта - объект открывает возможности по доступу непосредственно к почтовым ящикам и учетным записям находящимися на почтовом сервере,
использование и работа данного объекта не зависит от установленных в системе почтовых клиентов, даже если почтовый клиент установлен в системе "ИнтернетПочта" будет работать параллельно с ним, объект использует интернет-протоколы SMTP, POP3.

1.Получение сообщений объектом "Почта".

Для работы с объектом Почта необходимо наличие установленного на компьютере почтового клиента с
описанными учетными записями.

Для подключения к почтовому клиенту у объекта есть метод "Подключиться".

Почта = Новый Почта;
Почта.Подключиться(,);

Первый параметр - имя профиля, к примеру, если в системе установлен MS Outlook, то как правило его профиль
называется Outlook. Следовательно при подключении строка
выглядела бы так:

Почта.Подключиться("Outlook");

Второй параметр отвечает за пароль к учетной записи.

Далее необходимо произвести выбор необходимых нам писем, для этой цели объект
Почта имеет метод "Выбрать". У метода два параметра,
первый отвечает за выбор непрочитанных писем - Истина (при Ложь будут выбраны все письма, находящиеся в папке "Входящие" почтового клиента),
второй отвечает за выборку вложений, при Ложь, вложения выбираются.

// Выбираем все письма, со всеми вложениями.
Сообщения = Почта.Выбрать(Ложь,Ложь);

(иногда при взаимодействии с Outlook 2003 возникает проблема, при которой 1С 8 просто аварийно завершает работу с ошибкой, именно на данной строке кода,
это лечится установкой пакета обновления SP2 для MS
Office 2003).


// Добавляем строку в табличную часть
СтрокаТП = ТабличноеПоле1.Добавить();

// Перебираем коллекцию получателей сообщения
Для каждого Получатель Из Письмо.Получатели Цикл
Получатели = Получатели + Получатель.Пользователь + " <" + Получатель.Адрес + "> ";
КонецЦикла;

СтрокаТП.Кому = Получатели;
Попытка
СтрокаТП.ОтКого= Сообщение.Отправитель.Адрес;
Исключение
СтрокаТП.ОтКого= Сообщение.Отправитель;
КонецПопытки;

СтрокаТП.Тема = Сообщение.Тема;
СтрокаТП.Текст = Сообщение.Текст;
СтрокаТП.Дата = Сообщение.ДатаПолучения;

// Перебираем вложения письма

Вложение.Данные.Записать(Вложение.Наименование);
//
Запоминаем имена вложение прикрепленных к данному письму, и сохраним в ТабличноеПоле1
Влож=Влож+Вложение.Наименование+",";
КонецЦикла;

СтрокаТП.ПутьВложения=Влож;
КонецЦикла;

//отключение
Почта.Отключиться();

Все реквизиты входящих писем сохраняются в соответствующие поля
табличного поля, вложения сохраняются в каталог временных файлов, а имена вложений в реквизит табличного поля.
Для более удобного хранения вложений писем, 1С 8 имеет тип "Хранилище значения", который позволяет хранить двоичные данные, далее при получении сообщений объектом ИнтернетПочта рассмотрим возможность хранения в "Хранилище значения".

2.Отправка сообщений объектом "Почта"

При отправке сообщения, подключение к почтовому клиенту производится точно так же, как и при получении, перед отправкой необходимо подготовить письмо.

Сообщение = Новый ПочтовоеСообщение;
Сообщение.Текст = "текст сообщения";
Сообщение.Отправитель = "[email protected]";

Сообщение.Получатели.Добавить("[email protected]");
Сообщение.Вложения.Добавить(Новый ДвоичныеДанные("C:\file.jpg#26759185"),"file.jpg#26759185");

Почта = Новый Почта;

//подключаемся без параметров, к клиенту установленному по умолчанию в системе
Почта.Подключиться(,);

Попытка
//Пытаемся послать письмо
Почта.Послать(Сообщение,Истина);
Исключение
Возврат;
КонецПопытки;

//отключение
Почта.Отключиться();

В методе Почта.Послать(Сообщение,Истина) два параметра, первый принимает ссылку на почтовое сообщение, второй параметр определяет, требуется ли запрос на подтверждение о получении письма адресатом (Истина - запрос включен).
После этих операций письмо попадает в папку "Исходящие" почтового клиента, и в зависимости от настроек клиента отправляется сразу или по команде пользователя.

В MS Outlook встроена защита от несанкционированного доступа к адресной книге и базе почтовых сообщений, и защита от несанкционированной отправки электронных писем через службы
Outlook. В Outlook 2003 система безопасности срабатывает не только при попытке получить адрес отправителя письма, но даже при попытке получить его текст.
В действительности защита выражается в показываемом пользователю окне системы безопасности при обращении к некоторым объектам и свойствам объектов Outlook и предлагает открыть доступ на определенное время:

следует разрешить доступ.

3.Получение сообщений объектом "ИнтернетПочта".

Перед подключением к почтовому серверу, для объекта ИнтернетПочта необходимо заполнить данные Профиля учетной записи, и затем передать эти данные в метод "Подключиться".

Функция ПолучитьПрофиль()

Профиль = Новый ИнтернетПочтовыйПрофиль;

//SMTP сервер
Профиль.АдресСервераSMTP = "smtp.pupkin.com";

// Порт SMTP сервера
Профиль.ПортSMTP = 25;

// POP3 сервер
Профиль.АдресСервераPOP3 = "pop.pupkin.com";

// Порт POP3 сервера
Профиль.ПортPOP3 = 110;

// Пароль к почтовому ящику
Профиль.Пароль = "pass";

// Пароль пользователя для SMTP сервера
Профиль.ПарольSMTP = "pass";

// Логин пользователя
Профиль.Пользователь = "vasya";

// Логин пользователя для SMTP сервера
Профиль.ПользовательSMTP = "vasya";

// Время ожидания выполнения операции в секундах

Профиль.ВремяОжидания = 50;
Возврат Профиль;

КонецФункции

Почта = Новый ИнтернетПочта;

Попытка

Исключение
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;

Заголовки=Почта.ПолучитьЗаголовки()
Если Заголовки.Количество()=0 Тогда
Предупреждение("В почтовом ящике нет входящих сообщений!","Нет сообщений");
КонецЕсли;

Для каждого Сообщение Из Сообщения Цикл
СтрокаТП = ТабличноеПолеИнтернетПочта.Добавить();
СтрокаТП.Дата = Сообщение.ДатаОтправления;
СтрокаТП.ОтКого = Сообщение.Отправитель.Пользователь + " <" + Сообщение.Отправитель.Адрес + "> ";
СтрокаТП.Тема = Сообщение.Тема;

// Перебираем получателей сообщения
Для каждого Получатель Из Сообщение.Получатели Цикл
КомуВходящие = КомуВходящие + Получатель.Пользователь + " <" + Получатель.Адрес + "> ";
КонецЦикла;
СтрокаТП.Кому = КомуВходящие;

// Перебираем тексты сообщения
Для каждого ТекстСообщения Из Сообщение.Тексты Цикл
ТекстВходящие = ТекстВходящие + ТекстСообщения.Текст;
КонецЦикла;
СтрокаТП.Текст = ТекстВходящие;

// Перебираем вложения письма
Для каждого Вложение Из Сообщение.Вложения Цикл
Вложение.Данные.Записать(Вложение.Name);
СправочникВложения.РеквизитВложение = новый ХранилищеЗначения(Новый ДвоичныеДанные(Вложение.Name));
СправочникВложения.ИмяВложения=Вложение.Name;
КонецЦикла;
КонецЦикла;

//отключение
Почта.Отключиться();

Метод Почта.Выбрать(Истина,Заголовки); имеет два параметра, первый отвечает за удаление писем с сервера (при Истина-удалять),
второй параметр отвечает за массив сообщений для выборки (т.е. закачки на компьютер клиента с сервера), если параметр пуст, то выбираются все сообщения находящиеся на сервере.

При переборе вложений, данные полученные из письма сохраняются в реквизит типа ХранилищеЗначения, заранее созданного справочника "СправочникВложения" в конфигураторе,
т.к. данные первоначально сохраняются на диск, а затем загружаются в справочник, то, после загрузки в соответствующий реквизит справочника
данные можно удалить. Не рекомендуется хранить данные типа ХранилищеЗначения в Табличных частях справочников, т.к. при больших объемах
данных это затормаживает работу конфигурации.

4.Отправка сообщений объектом "ИнтернетПочта".

При отправке сообщения используется Функция ПолучитьПрофиль().

Почта = Новый ИнтернетПочта;
Попытка
Почта.Подключиться(ПолучитьПрофиль());
Исключение
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;
Сообщение = Новый ИнтернетПочтовоеСообщение;

Сообщение.Вложения.Добавить(Новый ДвоичныеДанные("C:\file.jpg#26759185"),"file.jpg#26759185");

Сообщение.Отправитель = "[email protected]";
Сообщение.ИмяОтправителя = "Вася";
ПочтовыеАдреса = Сообщение.Получатели;
ПочтовыйАдрес = ПочтовыеАдреса.Добавить();
ПочтовыйАдрес.Адрес = "[email protected]";
Сообщение.Тема ="Тема сообщения";

ИнтернетТекстПочтовогоСообщения = Сообщение.Тексты.Добавить();
ИнтернетТекстПочтовогоСообщения.Текст = "Текст сообщения";
ИнтернетТекстПочтовогоСообщения.ТипТекста = ТипТекстаПочтовогоСообщения.ПростойТекст;

Попытка
// Пытаемся послать письмо
Почта.Послать(Сообщение);
Исключение
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;
//
отключение
Почта.Отключиться();

Удобно подключить автополучение/автоотправку почты командой "ПодключитьОбработчикОжидания(,)".
Первый параметр в команде отвечает за наименование вызываемой процедуры, и второй, период ожидания процедуры в секундах,
обычно обработчик ожидания вставляется в глобальный модуль системы (например, в процедуру ПриНачалеРаботыСистемы()) и указывает на процедуру с пометкой Экспорт.

Например, можно создать процедуру ПроверитьПочту, в которую вставить загрузку писем из почтового ящика и вставить ее в следующую строку:

ПодключитьОбработчикОжидания("ПроверитьПочту",60)

Также для обработки и просмотра сообщений в формате
HTML удобно пользоваться компонентом "Поле HTML документа",
для загрузки HTML текста в компонент используется метод ПолеHTMLдокумента.УстановитьТекст(Html), где Html-это документа полученный из
текста сообщения. Есть вариант загрузки HTML с диска (если это вложение), ПолеHTMLдокумента.Перейти("file:\\C:\File.html").

После использования нескольких или сразу всех способов работы с электронной почтой, образуется полноценный почтовый клиент с возможностью хранения и обработки писем с вложениями на базе 1С предприятие 8.0.

Желаю успехов в освоении и использовании.

Настройка почтового клиента для баз 1С:Предприятие 8.2 (на примере Mail.Ru)

1. Открыть справочник учетных записей почты: Справочники - Электронная почта - Учетные записи электронной почты .

2. Создать новую учетную запись, которую необходимо настроить, либо выбрать Системная учетная запись для настройки отправки по умолчанию.

3. Ввести параметры учетной записи электронной почты.

email: ваш почтовый адрес

SMTP-сервер Yandex Почта, Google Mail , Mail.ru)
IMAP или POP3-сервер:
флаг должен быть отмечен
60 секунд.

4. После введения настроек нужно нажать "Проверить настройки учетной записи

Настройка почтового клиента для 1С:Предприятие 8.3 (на примере Google Mail)

1. Активировать встроенный почтовый клиент. Открыть вкладку Администрирование , перейти в раздел Органайзер , установить флаг Почтовый клиент .

2. Перейти к настройке учетной записи. Можно создать новую учетную запись для пользователя (Учетные записи электронной почты ), либо выбрать Настройка системной учетной записи для настройки отправки писем из 1С по умолчанию.

3. Заполните поля Адрес Электронной почты , Пароль , установите переключатель Определить параметры подключения автоматически .

Если настройка завершилась ошибкой, проверьте параметры:

SMTP-сервер : зависимости от вашего почтового сервиса (Yandex Почта, Google Mail , Mail.ru)
IMAP или POP3-сервер: в зависимости от вашего почтового сервиса.
флаг Использовать безопасное соединение SSL должен быть отмечен
Время ожидания сервера - не менее 60 секунд.

5. После введения настроек нужно нажать "Проверить учетную запись ", чтобы убедиться, что почта настроена корректно.

Возможные сложности

Если при настройке почтового клиента возникают сложности, рекомендуем дополнительно проверить настройки вашего почтового аккаунта.

Google Mail

В настройках почтового аккаунта для работы с 1С необходимо разрешить доступ к email непроверенным приложениям (т.е. приложениям, отличным от стандартных почтовых программ).

Для этого достаточно зайти в настройки аккаунта https://www.google.com/settings/security/lesssecureapps и Включить опцию Доступ к Аккаунту .

Так же убедитесь, что в настройках почты разрешено использование IMAP или POP (в зависимости от того, какой способ настройки выбран в 1С).

Отправить эту статью на мою почту

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

И сейчас мы на примере УТ 11 рассмотрим, как выполнить настройки электронной почты в 1с 8.3 обычному пользователю для возможности использования почтового клиента в программе.

Перейдите в раздел НСИ и администрирование → Органайзер и откройте по ссылке справочник Учетные записи электронной почты. Он предназначен для ведения учетных записей, которые используются для получения и/или отправки сообщений.

В справочнике уже содержится по умолчанию одна строка, это предопределенная Системная учетная запись, которая может использоваться для рассылки различных уведомлений из программы.

Для добавления новой учетной записи и настройки электронной почты в 1с надо нажать команду Создать и ввести основные параметры:

 Адрес почты и ее Пароль;

 Назначение: для отправки и/или получения корреспонденции;

 Для кого будет использоваться запись: для всех пользователей или она создается только для себя;

 Имя отправителя - указывается имя владельца, именно оно будет отображаться в письмах;

 Вариант определения параметров подключения. Рекомендуется использовать автоматически установленные параметры, но так же доступен вариант ручного подключения, в этом случае по кнопке Далее осуществляется переход к настройкам серверов входящей и исходящей почты (в зависимости от выбранного варианта использования).

Если вы выбрали ручной вариант указания параметров подключения, то в зависимости от того, какую вы используете почту, информацию о том, какой сервер и порт надо указать вы можете уточнить:

 у системного администратора (если используется корпоративная почта),

 на официальных сайтах (если заимствуется популярные почтовые сервисы, такие как mail, gmail, yandex, google),

 у службы поддержки (если вы арендуете почту).

При нажатии Создать система выполнит проверку настроек и если ошибок не будет обнаружено, то появиться сообщение об успешном завершении процедуры, в противном случае потребуется выполнить настройку параметров подключения вручную.

Итак, в справочнике появилась новая строка, и работать с корреспонденцией уже можно, но настройка электронной почты в 1с 8.3 на этом не заканчивается. В карточке доступны следующие ссылки: Настройки, Папки электронных писем, Правила обработки электронной почты.

 Надо ли получать, сохранять и отправлять письма (этот вариант используется, если вы планируете вести переписку);

 Удалять письма после отправки (используется, если нет потребности в хранении исходящих писем);

 Ответственные пользователи за обработку писем и ведение папок;

 Добавление подписи для новых писем;

 Добавление подписи при ответе или пересылке письма.

По ссылке Папки электронных писем открывается справочник, который используются для распределения писем входящих и исходящих по соответствующим папкам. В Правилах обработки задаются условия распределения писем по доступным папкам.

Например, вам надо письма от крупных партнеров хранить отдельно. Для этого в перечне папок электронных писем добавляем для каждого партнера свою папку. А в правилах обработки прописываем, как определить этих партнеров и в какие папки поместить.

После того как все необходимые настройки электронной почты в 1с 8.3 выполнены вы можете приступать к работе с почтовым клиентом.

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

Найти текущую корреспонденцию (если настроено ее хранение), вы можете в соответствующих списках документов Электронные письма входящие и Электронные письма исходящие.

2016-12-08T11:20:53+00:00

Вам часто приходится формировать счёт на оплату для покупателя и отправлять его по почте?

Тогда вам понравится возможность отправлять такие счета (как в прочем и любые другие печатные формы) прямо из 1С:Бухгалтерии 8.3 (редакция 3.0)! Настроить это несложно.

Заходим в раздел "Администрирование" и открываем пункт "Органайзер" ():

В настройках органайзера выбираем пункт "Настройка системной учетной записи":

Заполняем эти настройки в соответствии с настройками вашей электронной почты:

  • Адрес электронной почты - наш e-mail
  • Имя отправителя - название нашей организации
  • Ставим галку для отправки писем
  • Имя пользователя
  • Пароль
  • Сервер - для почты от google укажем здесь smtp.gmail.com
  • Порт - для почты от google укажем здесь 465
  • Ставим галку

Переходим на закладку "Получение писем". Мы не планируем получать письма, но заполнить эту закладку 1С требует в любом случае:

  • Имя пользователя - для почты от google укажем здесь снова наш e-mail
  • Пароль - пароль от нашего почтового ящика
  • Сервер - для почты от google укажем здесь pop.gmail.com
  • Протокол - для почты от google укажем здесь POP
  • Порт - для почты от google укажем здесь 995
  • Ставим галку использовать безопасное соединение (SSL)

В примерах выше указаны настройки для почты gmail (от google). Если у вас другая почта (mail, yandex), то ваши настройки (сервер, порт) будут немного другими. Их вы можете уточнить в справочной вашего почтового ящика. В целом эти настройки аналогичны тем, которые приходится делать при настройке почтового клиента (например, the bat).

Наконец, чтобы убедиться, что мы всё правильно настроили нажимаем кнопку "Ещё" и выбираем пункт "Проверить настройки":

Некоторое время спустя появляется сообщение о том, что проверка завершилась успешно:

Отлично! Давайте же наконец отправим наш счёт. Для этого сформируем его печатную форму (из документа счёт на оплату покупателю) и далее вместо привычных "Печать" или "Сохранить" нажмём кнопку "Отправить":

Нас просят выбрать в каком формате отправить этот счёт, указываем "Лист Microsoft Excel 97-2003" и нажимаем кнопку "Выбрать":

Появилась форма отправки письма. Тема, само письмо и счёт приложенный в виде файла уже автоматически сформированы за нас. Для конкретного контрагента и по конкретному счёту. Красота!

Нам осталось лишь вставить адрес покупателя, которому мы хотим отправить письмо и нажать кнопку "Отправить":

Письмо отправлено успешно, о чём свидетельствует сообщение ниже:

Покупателю это письмо придёт вот в таком виде:

Ну а, чтобы не забивать каждый раз адрес почты покупателя в ручную мы можем один раз указать его в карточке контрагента, тогда он будет автоматически подставляться во все письма для него:

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

Мы молодцы, на этом всё

Кстати, на новые уроки...

С уважением, Владимир Милькин (преподаватель

Отправка документов из 1С по средствам e-mail не так уж сложна, но почему-то пользователи редко пользуются данной очень удобной возможностью. Рассмотрим настройку отправки почты из 1С в конфигурациях 10.3, и 1.3.

Шаг первый

Отправка документов из 1С почтой

Каждая печатная форма: , или , — в программе 1С имеет специальную кнопку — отправка электронной почтой:

Если всё настроено правильно, система предложит варианты отправки сообщения, где можно выбрать, в каком формате отослать файл, выберем XLS:

Получите 267 видеоуроков по 1С бесплатно:

После нажатия ОК система предложит нам заполнить остальную информацию будущего письма:

Кому — можно выбрать из списка, если у выбранного в документе контрагента установлен е-мейл.

На вкладке «письмо» можно указать сопровождающее сообщение. Для отправки осталось нажать «Отправить».

Однако! Если у Вас не настроен почтовый клиент, выскочит вот такое сообщение:

В этом нет ничего страшного, рассмотрим настройку отправки почты из 1С подробнее:

Настройка почтового клиента в 1С

Для отправки документов Счет, Счет-фактура, ТОРГ12 и других по почте первым делом необходимо произвести настройку почты в 1С 8.3. После попадания в меню настройки мы увидим следующее:

Здесь Вы должны указать Ваши настройки учетной записи. Если Вы их не знаете, узнайте у Вашего провайдера или обслуживающего информационную систему сотрудника.

После того как настройки введены, можно проверить их правильность, нажав кнопку Проверить настройку учетной записи .

Настройка готова!