при работе с объектом интернетпочта можно произвести выборку писем либо заголовков
Работа с электронной почтой в 1С
Работа с электронной почтой в 1С возможна непосредственно из встроенного языка. Разработчик может выполнять отправку и прием писем электронной почты.
Система 1С:Предприятие 8 предоставляет две возможности работы с электронной почтой:
Работа с электронной почтой в 1С с использованием почтового клиента, установленного на компьютере (Почта)
При организации доступа к почтовой системе, установленной на компьютере, имеется возможность:
В системе поддерживается коллекция объектов различных типов для организации взаимодействия по электронной почте.
С ее помощью можно создавать, посылать и принимать сообщения, причем сообщения могут иметь несколько адресатов и присоединенных файлов, добавлять (менять, удалять) адреса как пары (пользователь – сервер), так и полные почтовые адреса, управлять почтовыми вложениями и т.д.
Работа с электронной почтой в 1С без использования почтового клиента, установленного на компьютере (ИнтернетПочта)
Механизм интернет-почты позволяет организовать обмен электронной корреспонденцией между адресатами, не имея отдельного установленного почтового клиента.
Универсальность набора объектов этого механизма позволяет решать различные задачи коммерческой деятельности предприятия, связанные с информационным обменом.
Задачи, решаемые интернет-почтой 1С:
Решение этих задач упрощается благодаря возможности передавать и получать данные в различных форматах (текст, HTML, графика, двоичные данные и т.д.).
В основе механизма электронной почты лежат общепринятые почтовые Интернет-протоколы SMTP и POP3, что позволяет использовать уже существующие и широко распространенные в Интернете почтовые инфраструктуры, а для пользователей такая опора на известные стандарты сокращает время освоения прикладных решений.
Механизм интернет-почты позволяет:
Особенности работы с электронной почтой в 1С:
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Особенности использования объекта ИнтернетПочта
Протоколы
Протоколы SMTP и POP3 наиболее распространены в Интернете. Кратко опишем назначение каждого из них.
Целью протокола SMTP (Simple Mail Transfer Protocol – простой протокол передачи электронной почты) является эффективная и надежная доставка сообщений электронной почты.
Использование SMTP протокола можно представить следующим образом:
Когда пользователь хочет отправить сообщение, он организует двухсторонний канал связи (порт номер 25) с почтовым сервером (сервером SMTP). Фактически отправитель выступает в роли клиента, а получатель – в роли сервера. Клиент посылает команды, сообщающие серверу кому направляется сообщение и само сообщение.
Post Office Protocol (POP) – протокол доставки с почтового ящика сервера POP накопившихся сообщений. Целью протокола является получение сообщений от почтового сервера.
Когда клиент хочет получить почту, он устанавливает с сервером (номер порта 110) канал связи. Если соединение установлено, сервер отправляет приглашение клиенту. Далее происходит обмен данными, после чего соединение закрывается. Сессия POP3 состоит из нескольких режимов. После того как сервер отправил приглашение, он переходит в режим авторизации (AUTHORIZATION). В этом режиме происходит аутентификация клиента на сервере. Если аутентификация успешна, сервер переходит в режим обмена данными (TRANSACTION). Когда клиент закрывает сессию после режима обмена данными, сервер переходит в режим сохранения изменений (UPDATE), освобождает все занятые ресурсы и завершает работу.
Настройка ИнтернетПочты
Отправка
Тип кодировки и кодирование текста
Протокол SMTP позволяет посылать только текстовые данные, при этом отводя на каждый октет (символ) только 7 или 8 бит. Все текстовые данные сообщения посылаются в Unicode (16 бит на символ), поэтому необходимо предварительное конвертирование в UTF-8. UTF-8 кодирует один символ текста от одного до четырех байт по 8 бит каждый. Но UTF-8 строка является бинарными данными, а для почтовых протоколов это не приемлемо. Таким образом, полученная UTF-8 строка еще дополнительно кодируется (не путать с шифрованием) по методу base64.
ОбработатьТексты
Вначале элементу ПолеHTMLДокумента присваивается HTML текст сообщения. Затем перебираются все элементы HTML документа с именем тега «IMG». Для каждого элемента в цикле ищется вложение с таким же идентификатором и если находится такое вложение, оно сохраняется во временном файле, а в HTML документе прописывается ссылка к этому файлу.
Прием
Также протокол не допускает одновременного подключения к почтовому ящику нескольких клиентов, поэтому могут генерироваться исключения, говорящие о том, что в данный момент почтовый ящик заблокирован другим почтовым клиентом.
У сообщения есть уникальный для всего мира идентификатор, который можно использовать для идентификации сообщения, например для определения новых сообщений.
Удаление
Выборочное удаление удобно, когда прикладное решение должно выбрать из общего набора сообщений персонального почтового ящика те, которые необходимо обработать (например, будут загружаться заявки), а другие сообщения должны остаться в почтовом ящике сервера, чтобы пользователь мог просмотреть их другим почтовым клиентом. В этом случае получить сообщения необходимо без удаления ( Выбрать(Истина) ), а затем, отобранные по определенному критерию, сообщения следует удалить.
v8: Получение писем в 1с82
Всем доброго дня.
Помогите, пожалуйста разобраться с вот такой проблемой. Есть УТ 10. В ней стандартный механизм получения писем. При получении писем происходит для меня что-то не понятное. Код, отвечающий за это из типовой, привожу ниже:
Профиль = ПолучитьИнтернетПочтовыйПрофиль(УчетнаяЗапись);
ИнтернетПочта = Новый ИнтернетПочта;
ИнтернетПочта.Подключиться(Профиль);
МассивЗаголовковПисем = ИнтернетПочта.ПолучитьЗаголовки(ПараметрыОтбора);
МассивЗаголовковПисем = ПолучитьСписокПисемКПолучению(УчетнаяЗапись, МассивЗаголовковПисем, МассивПисемДляУдаления);
МассивПисем = ИнтернетПочта.Выбрать(НЕ УчетнаяЗапись.ОставлятьКопииСообщенийНаСервере, МассивЗаголовковПисем);
А теперь собственно проблема. Есть локальная сеть №1. Когда в ней выполняется код МассивЗаголовковПисем = ИнтернетПочта.ПолучитьЗаголовки(ПараметрыОтбора), то в МассивЗаголовковПисем возвращается массив заголовков, по количеству соответствующий количеству писем на сервере, но все остальные поля каждого заголовка не заполнены, а в качестве идентификатора письма во всех строках указано «d41d8cd98f00b204e9800998ecf8427e». Процедура «ПолучитьСписокПисемКПолучению» анализирует идентификаторы полученных заголовков и оставляет только те, которые в базе 1с не найдены. В базе 1с нет писем с идентификатором d41d8cd98f00b204e9800998ecf8427e, поэтому все 500 с лишним заголовков передаются в как параметр в функцию Выбрать объекта ИнтернетПочта. И он уходит в себя почти на пол часа. В свою очередь, функция Выбрать возвращает все имеющиеся в ящике письма в нормальном виде, то есть с заполненными полями и уникальными идентификаторами, в отличии ситуации с заголовками. И все 500 + писем перезатираются в базе, что есть очень долго и печально. Хотя по факту новых писем там от силы 5 штук.
Попробовал развернуть эту базу на другом компе из этой локалки – ситуация таже.
Попробовал развернуть у себя дома – ситуация изменилась. Строка «МассивЗаголовковПисем = ИнтернетПочта.ПолучитьЗаголовки(ПараметрыОтбора);» вернула 500+ заголовков, но они были заполнены, как и должно быть(тема, адреса, даты и тд) и у них у всех были действительно разные уникальные идентификаторы. И имели вид «E1WAAsu-0005M0-BC@niko.ne». по таким идентификаторам функция «ПолучитьСписокПисемКПолучению» нашла все имеющиеся в базе письма, удалила заголовки уже имеющихся и получила недостающие 5 писем. Все отработало отлично.
Попробовал развернуть в совершенно другой локалке базу. Также все хорошо отработало.
Учетные данные были везде одинаковые. В чем может быть проблема и как ее лечить?
Тестирование 1С:Профессионал Платформа 8.3 — 08
08.01 С точки зрения XML сериализации значение типа «ДокументСсылка.ИмяДокумента» относится:
08.02 Одновременно с файлом формата dbf может быть открыто…
08.03 При обращении к базе данных 1С:Предприятие 8 через OLE выполняется процедура — обработчик события «ПриНачалеРаботыСистемы» определенный…
08.04 Данную топологию обмена между информационными базами (имеющими одинаковую конфигурацию) можно реализовать:
08.05 При записи значения с использованием средств XML сериализации в XML документ:
08.06 При обращении к базе данных 1С:Предприятие 8 через COM выполняется процедура — обработчик события «ПриНачалеРаботыСистемы» определенный…
08.07 Данную топологию обмена между информационными базами (имеющими одинаковую конфигурацию) можно реализовать:
08.08 Событие «ПриПолученииДанныхОтПодчиненного», определенное в модуле плана обмена, возникает при получении данных от подчиненного узла:
08.09 При последовательном чтении из текстового файла невозможно:
08.10 В процедуре, которая будет вызываться при подключении к базе данных через СОМ, нельзя использовать:
08.11 При использовании механизма распределенных баз данных изменения в конфигурации:
08.12 При использовании механизма распределенных информационных баз в соответствующем объекте «План обмена» отдельно взятой информационной базы (входящей в распределенную) определяется:
08.13 Для создания объекта, с использованием которого из одной базы 1С:Предприятие 8 будет производиться обращение через OLE к другой информационной базе 1С:Предприятие 8, используется конструктор:
08.14 К простым с точки зрения XML сериализации относятся типы:
08.15 Экземпляр объекта XBase позволяет одновременно организовать работу:
08.16 Для получения почты напрямую с почтового сервера (без использования установленного почтового клиента) используется объект:
08.17 Элементы управления ActiveX могут использоваться в диалоге формы:
08.18 К сложным, с точки зрения XML сериализации, относятся типы:
08.19 У плана обмена может быть следующее количество предопределенных узлов (которые нельзя удалить или пометить на удаление):
08.20 С точки зрения XML сериализации, значение типа «ХранилищеЗначения» относится:
08.21 Для обращения к свойствам элементов управления ActiveX из модуля формы используется:
08.22 При использовании универсальных механизмов обмена (в свою очередь использующих планы обмена) таблица регистрации изменений для объектов, изменение которых отправлено в сформированном сообщении:
08.23 При использовании механизма распределенных баз данных таблица регистрации изменений для объектов, изменение которых отправлено в сформированном сообщении:
08.24 С точки зрения XML сериализации, значение типа «КонстантаМенеджерЗначения.Имя константы» относится:
08.25 При работе с объектом «ИнтернетПочта» можно произвести выборку писем (либо заголовков):
08.26 В качестве макета нельзя использовать:
08.27 При использовании возможности организации универсального обмена данными процесс разрешения коллизий:
08.28 При работе с внешней компонентой (выберите наиболее правильное утверждение):
08.29 При использовании планов обмена, управлять составом узлов, для которых производится регистрация изменений объектов:
08.30 Объект «ПреобразованиеXSL» предназначен…
08.31 С помощью средств XML сериализации нельзя в XML документ сохранить значения, имеющие тип:
08.32 Выберите правильное утверждение, касающееся элемента управления «поле HTML документа»
08.33 Для отслеживания момента полной загрузки HTML документа в элементе управления «Поле HTML документа» можно использовать:
08.34 Для получения почты посредством установленного на пользовательском компьютере почтового клиента используется объект:
08.35 При программном создании фабрики XDTO, типы в ней определенные:
08.36 Типы определенные в глобальной фабрике XDTO:
08.37 Понятию «Фабрика XDTO» больше всего соответствует такое понятие XML как:
08.38 Понятию «Пакет XDTO» больше всего соответствует такое понятие XML как:
08.39 В рамках создаваемого пакета XDTO (без использования директивы импорта) можно использовать типы:
08.40 В рамках модели XDTO понятие «Фасет» относится к:
08.41 При определении типа свойства объекта XDTO информация о типе включает:
08.42 Менеджер WEB сервисов решает задачу:
08.43 Объект конфигурации «WEB сервис» используется для:
08.44 Объект конфигурации «WSСсылка» используется для:
08.45 В случае если функция, реализующая операцию WEB сервиса, возвращает какое-либо значение. То такое значение определяется (при настройке соответствующего объекта конфигурации) как имеющее тип:
08.46 При обращении к WEB сервису по статической ссылке последовательность действий следующая:
08.47 При обращении к WEB сервису по динамической ссылке последовательность действий следующая:
08.48 В случае если функция, реализующая операцию WEB сервиса, принимает какое-либо значение в качестве параметра. То такое значение определяется (при настройке соответствующего объекта конфигурации) как имеющее тип:
08.49 Каким образом можно определить в каких планах обмена для конкретного прикладного объекта указана авторегистрация?
08.50 Для прикладных объектов в окне редактирования объекта конфигурации на закладке «Обмен данными» указываются …
08.51 Редактирование OLE-объектов осуществляется:
08.52 Внешние файлы табличных документов:
08.53 Automation-сервер «1С:Предприятие 8»…
08.54 Создание информационной системы с использованием нескольких информационных баз в системе 1С:Предприятие 8…
Статьи
Работа с электронной почтой в 1С:Предприятие 8
Автор: ведущий специалист по разработке дополнений к типовым решениям «1С:Предприятие 8» Анна Бондаренко
В рамках развития типовых конфигураций в сторону CRM-систем в конфигурациях появилась возможность работы с электронной почтой. С помощью данного механизма при необходимости возможно прямо из программы 1С:Предприятие отправить письмо адресату с текстом, с прикрепленным файлом, имеется возможность оповестить все клиентов о чем-либо, либо сформировав печатную форму документа сразу отправить ее адресату, а также имеется возможность принимать и обрабатывать входящие сообщения. В 1С:Предприятие существует два способа работы с электронной почтой:
Каждый из вариантов имеет свои достоинства и недостатки.
Объект Почта позволяет принимать и отправлять почтовые сообщения посредством установленного (и настроенного) почтового клиента (почтовой программы). Все настройки, связанные с подключением к почтовым серверам, определяются в учетной записи почтового клиента. Через объект Почта фактически происходит подключение к учетной записи программы — почтового клиента по умолчанию. Чтение писем производится из папки Входящие (из других папок произвести это нельзя), при этом есть возможность получить только непрочитанные письма. При отправке писем нужно учитывать особенности системы безопасности каждого почтового клиента. Обычно стоит запрет на отправку сообщений «из другой программы от имени почтового клиента». Этот факт особенно важно учитывать при организации отправки без участия пользователя (ночью с сервера…). Следует отметить, что работа с объектом Почта на стороне сервера 1С:Предприятии из модуля внешнего сообщения невозможна.
Пример создание и отправки почтового сообщение с помощью объекта Почта приведен на рис.1
Чтение сообщений осуществляется посредством выборки (например, только непрочитанные и конверты вместе с вложениями). Пример приведен на рис.2
К достоинствам данного подхода следует отнести отсутствие необходимости указывать все настройки подключения к почтовому серверу в коде (они содержатся в почтовом клиенте и настраиваются администратором).
С помощью объекта ИнтернетПочта также возможно организовывать прием, отправку писем, но в отличие от объекта Почта, на локальной машине не требуется наличие установленного (и настроенного) почтового клиента по умолчанию. Объект ИнтернетПочта позволяет работать с почтовыми серверами напрямую по протоколам SMTP, POP3.
Для подключения к какому-либо серверу (в том числе и к почтовому) необходимо знать его адрес и порт, на котором обслуживаются запросы в соответствии с интересующим протоколом. Для работы с почтовым сервером объект ИнтернетПочта может использовать протокол SMTP (отправка сообщений, порт по умолчания №25) и POP3(получение сообщений, порт по умолчанию №110). Настройки обращения к почтовым серверам указываются в специализированном объекте ИнтернетПочтовыйПрофиль. Пример отправки почтовых сообщений приведен на рис.3.
В данном листинге используются следующие входные параметры:
Пример получения сообщения приведен на рис.4. В данном примере производится выборка всех сообщений по заданным заголовкам (НужныеЗаголовкиСообщений), где Почта = Новый ИнтернетПочта.
Следует отметить, что достоинством использования объекта ИнтернетПочта является возможность работы как со стороны сервера 1С:Предприятие, так и из модуля внешнего соединения (в противоположность объекту Почта).