Как в 1С 8 организовать работу с почтой без установленного почтового клиента на компьютере пользователя?

// Сформировать почтовый профиль. 
// При отправке нет необходимости указывать настройки, связанные с POP сервером. 
ИПП = Новый ИнтернетПочтовыйПрофиль; 
ИПП.АдресСервераSMTP = Константы.АдресСервераSMTP.Получить(); 
ИПП.ВремяОжидания = Константы.ВремяОжидания.Получить(); 
ИПП.Пароль = Константы.Пароль.Получить(); 
ИПП.ПарольSMTP = Константы.ПарольSMTP.Получить(); 
ИПП.Пользователь = Константы.Пользователь.Получить(); 
ИПП.ПользовательSMTP = Константы.ПользовательSMTP.Получить(); 
ИПП.ПортSMTP = Константы.ПортSMTP.Получить(); 
 
// Создать сообщение. 
Сообщение = Новый ИнтернетПочтовоеСообщение; 
Сообщение.Получатели.Добавить("hline@1c.ru"); 
Сообщение.Отправитель.Адрес = "booktest@yandexyandex.ru"; 
Сообщение.Тема = "Срочно в номер!"; 
Сообщение.Тексты.Добавить("Доброе время суток!"); 
 
Вложение = Новый ДвоичныеДанные(ПутьКФайлуВложения); 
 
Сообщение.Вложения.Добавить(Вложение,"attach.txt"); 
 
// Подключиться и отправить. 
Почта = Новый ИнтернетПочта; 
Почта.Подключиться(Профиль); 
Почта.Послать(Сообщение); 
Почта.Отключиться(); 
 
// Формирование почтового профиля. 
// При получении нет необходимости указывать настройки, связанные с SMTP сервером.
СостояниеПриема = "Подключение к серверу"; 
ИПП = Новый ИнтернетПочтовыйПрофиль; 
ИПП.АдресСервераPOP3 = Константы.АдресСервераPOP3.Получить(); 
ИПП.ВремяОжидания = Константы.ВремяОжидания.Получить(); 
ИПП.Пароль = Константы.Пароль.Получить(); 
ИПП.Пользователь = Константы.Пользователь.Получить(); 
ИПП.ПортPOP3 = Константы.ПортPOP3.Получить(); 
 
Соединение = Новый ИнтернетПочта; 
Соединение.Подключиться(ИПП); 
СостояниеПриема = "Получение выборки писем"; 
Выборка = Соединение.Выбрать(ЗабиратьССервера); 
СостояниеПриема = "Создание документов - писем"; 
КоличествоВВыборке = Выборка.Количество(); 
Индекс = 1; 
 
Для Каждого Письмо Из Выборка Цикл 
ТекПозиция = Окр(Индекс*100/КоличествоВВыборке); 
Если ТекПозиция <> Позиция Тогда 
Позиция = ТекПозиция; 
КонецЕсли; 
Док = Документы.Письмо.СоздатьДокумент(); 
Док.Тема = Письмо.Тема; 
СтрПолучатели = ""; 
 
Для Каждого Адрес Из Письмо.Получатели Цикл 
СтрПолучатели = СтрПолучатели + Адрес.Адрес + ","; 
КонецЦикла; 
 
Док.Получатели = СтрПолучатели; 
Если ТипЗнч(Письмо.Отправитель) = Тип("Строка") Тогда 
Отправитель = Письмо.Отправитель; 
Иначе 
Отправитель = Письмо.Отправитель.Адрес; 
КонецЕсли; 
 
Док.Отправитель = Отправитель; 
Содержание = ""; 
 
Для Каждого ТекстСообщения Из Письмо.Тексты Цикл 
Содержание = Содержание + ТекстСообщения.Текст + Символы.ПС; 
КонецЦикла; 
 
Док.Содержание = Содержание; 
 
Индекс = Индекс + 1; 
 
Док.Записать(); 
КонецЦикла; 
 
Соединение.Отключиться(); 
 

 

19.04.2024