Документооборот ПРОФ, КОРП, ДГУ
22.02.2016
Основные объекты метаданных Почты – документы ВходящееПисьмо, ИсходящееПисьмо и журнал документов ЭлектроннаяПочта. Основная логика сосредоточена в общих модулях ВстроеннаяПочтаСервер и Почта.
Типичная проблема – перестают приниматься письма в каком-то почтовом ящике (или с самого начала не принимаются).
Для поиска причины рекомендуем проверить следующие данные:
Рассмотрим подробнее как найти "поврежденное" письмо.
// Попытка получить все сообщения сразу
Сообщения = Почта.ПолучитьВходящиеСообщения(Соединение, ПараметрыЗагрузки, СообщениеОбОшибке
Сообщения = Неопределено;
СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Учетная запись: %1 |попытка получения входящего письма: |%2 |Письмо: |Тема: ""%3"" |Дата: %4 |От кого: %5 %6 |Размер: %7'"), УчетнаяЗапись, "", Сообщение.Тема, Строка(Сообщение.ДатаПолучения), Строка(Сообщение.Отправитель.ОтображаемоеИмя), Строка(Сообщение.Отправитель.Адрес), Строка(Сообщение.Размер)); ЗаписатьОшибкуДоставки( СообщениеОбОшибке, Неопределено, УчетнаяЗапись, ПараметрыЛогирования, Неопределено, Перечисления.ТипыСобытийДоставкиПочты.ОшибкаПолученияПисьма);
Важно: если были зафиксированы случаи зависания регламентных заданий приема почты, то в настройках программы (раздел Почта) рекомендуется отключить настройку Получать текст из HTML писем точно (доступна в "1С:Документообороте" версии 2.0.9 и выше).
Иногда на внедрении появляется пожелание изменить внешний вид области чтения в списке писем. Это делается в ВстроеннаяПочтаСервер.ВставитьШапкуПисьмаВТекстHTML
Также пожелания могут касаться отображения вложенных писем. Сейчас они вставляются в тело письма. Изменить отбивку можно в ВстроеннаяПочтаСервер.СформироватьШапкуВложенногоПисьмаПростойТекст.
Ниже описаны несколько достаточно сложных алгоритмов в работе почты.
Число писем в папках хранится в регистре сведений КоличествоПисемВПапках в разрезе папки и пользователя. При приемке письма или переносе письма в другую папку в регистре очищаются все записи для данной папки. Расчет числа писем (Всего и Непрочитанных) выполняется "по требованию" - при открытии или обновлении пользователем формы почты (где в дереве папок видно количество писем в папках) – делается расчет именно для данного пользователя. То есть, например, для общей папки, куда есть доступ у десяти пользователей, после приемки нового письма для всех этих пользователей нет ни одной записи для этой папки. И только при входе в почту, скажем 2 пользователями – только для них и будет сделан расчет. Остальные 8 пользователей, возможно, и не зайдут в почту в ближайшее время (например, они отсутствуют) – и время на расчет для них потрачено не будет.
Внешняя почта принимается с email-сервера. Если в учетной записи указана настройка Оставлять копии сообщений на сервере и, например, Удалять с сервера через 3 дня - письма на email-сервере будут храниться 3 дня. Но при приемке в "1С:Документообороте" будут получаться только ранее непринятые письма.
Детали реализации:
Метаданные |
Описание |
Справочник АдресатыПочтовыхСообщений |
Содержит адресатов (представление и email). Ссылки на них есть например в табличной части писем ПолучателиПисьма, ПолучателиКопий |
Справочник ГруппыЛичныхАдресатов |
Содержит группы личных адресатов |
Справочник ЛичныеАдресаты |
Содержит личных адресатов |
Справочник ПапкиПисем |
Папки писем (в иерархии). |
Справочник ПапкиПоиска |
Параметры сохраненных поисков писем. |
Справочник СпискиАдресовЭлектроннойПочты |
Списки адресов, используемые в правилах обработки писем для правила «Адрес отправителя входит в список» - например для черного или белого списка. |
Документ ВходящееПисьмо |
Входящие письма |
Документ ИсходящееПисьмо |
Исходящие письма |
Журнал документов ЭлектроннаяПочта |
Таблица, где есть и входящие, и исходящие письма. |
Регистр сведений HTMLПредставленияСодержанияПисем |
Хранит кешированное представление письма (для более быстрого показа в области просмотра в списке писем) |
Регистр сведений АвтоматическиеОтветыПоАдресам |
Хранит адреса, на которые уже был дан ответ с помощью правила обработки писем «Ответить текстом» - чтобы не отвечать повторно на тот же адрес. |
Регистр сведений ИдентификаторыИмпортированныхПисем |
Хранит идентификаторы писем, загруженные командой «Загрузить письма из Microsoft Outlook» |
Регистр сведений ИдентификаторыПолученныхПисем |
Хранит идентификаторы писем, полученных по внешней маршрутизации – чтобы не получать повторно ранее полученные письма. |
Регистр сведений ИдентификаторыПочтовыхВложений |
Хранит идентификаторы вложений-картинок (в теле html письма) |
Регистр сведений ИспользованиеАдресатовПользователями |
Хранит адресатов, кому были отправлены письма – в разрезе пользователя. Используется при автоподборе адресата – чтобы показывать сверху последних адресатов. |
Регистр сведений ИспользованиеПочты |
Хранит персональные настройки использования встроенной и легкой почты |
Регистр сведений КоличествоПисемВПапках |
Нужен для показа числа писем в папках (Всего и непрочитанных), например «Входящие (2)» |
Регистр сведений НастройкиОтложеннойОтправкиПисем |
Настройки отложенной отправки писем в разрезе пользователя. |
Регистр сведений НеотправленныеИсходящиеПисьма |
Хранит информацию о письмах, которые не удалось отправить |
Регистр сведений НеполученныеВходящиеПисьма |
Хранит идентификаторы писем, которые не удалось получить. |
Регистр сведений ПапкиПисемБыстрогоДоступа |
Ссылки на папки, показываемые в режиме «Мои папки»- в разрезе пользователя. |
Регистр сведений ПапкиПисемТекущихДел |
Папки писем, показываемые в форме «Текущие дела» - в разрезе пользователя. |
Регистр сведений ПапкиПисемЧастоИспользуемые |
Папки писем, отображаемые в режиме «Компактный». |
Регистр сведений ПапкиУчетныхЗаписей |
Хранит информацию о предопределенных папках учетной записи (Входящие, Исходящие, Отправленные, Черновики, Корзина) |
Регистр сведений ПромежуточныеРезультатыПоискаПисем |
Хранит результаты поиска писем по реквизитам. |
Регистр сведений СведенияОбАдресатах |
Содержит связь между адресатом и контактом (например пользователем, корреспондентом) |
Регистр сведений СостоянияУчетныхЗаписей |
Хранит текущий статус учетной записи в разрезе операции (например соединения с сервером). |
Все метаданные почты отнесены к подсистеме Встроенная почта (Стандартные подсистемы Документооборота/ Встроенная почта) - удобно отфильтровать по ней в конфигураторе.