Переходный период между почтой и 1С:Документооборотом: как закрывать дублирование каналов | infolimp.ru

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

9 июля 2026 · infolimp.ru

Каждый, кто внедрял 1С:Документооборот в организации, где десятилетиями работали через почту, сталкивался с «переходным периодом» — временем, когда параллельно функционируют два канала: электронная почта и внутренний документооборот. Инструкции обычно советуют «постепенно отключать почту» или «настроить автоимпорт писем». Но реальная ловушка лежит глубже: дублирование документов – не техническая ошибка, а системный сбой управления процессами. Эта статья не пересказывает справку. Она показывает, как автоматически дедуплицировать письма, внедрить уникальные идентификаторы и закрыть переходный период без потерь данных.

Ловушка автоматического импорта: почему ручная сверка бесполезна

Самая распространённая ошибка – довериться ручной проверке писем и уже созданных из них документов. При потоке 50–200 входящих ежедневно сотрудник быстро теряет концентрацию, и дубли неизбежны. Но главное даже не человеческий фактор: дублирование закладывается в момент настройки автоимпорта. Типичный сценарий: почтовое сообщение обрабатывается обработчиком входящих писем, создаётся входящий документ, но само письмо остаётся в почтовом ящике. При следующем сканировании (или ручном повторном импорте) система создаёт второй документ. Почему? Потому что нет ключа, однозначно связывающего одно письмо с одним документом.

Механика дублирования: одно письмо — два входящих

Рассмотрим стандартный обработчик почты. В нём часто используется проверка «если такой номер входящего уже есть – пропустить». Но номер входящего присваивается документу после записи, а не до. Пока документ не записан, у него нет номера. Поэтому проверка по номеру бессмысленна до первого создания. Другой распространённый подход – проверка по теме письма. Но тема может совпадать у разных контрагентов (например, «Счёт на оплату»). Результат – либо пропуск важного документа, либо дубль.

Тестовый стенд: не отключайте автоимпорт на работающей базе без предварительной настройки дедупликации. Лучше потерять одно письмо на этапе отладки, чем получить 200 дублей, которые придётся чистить вручную.

Технический разбор: механизм уникального идентификатора письма

У каждого электронного письма есть свой уникальный идентификатор – Message-ID (заголовок RFC 5322). Он генерируется почтовым сервером отправителя и не повторяется (теоретически). 1С позволяет получить этот заголовок при разборе входящего письма. Сохранив его в регистр сведений СоответствиеПисемИДокументов, вы получите надёжный ключ для дедупликации.

Получение Message-ID и проверка дубля

Функция ПисьмоУжеОбработано(Письмо)
    MessageID = Письмо.Свойства.Заголовки.Получить("Message-ID");
    Если ПустаяСтрока(MessageID) Тогда
        Возврат Ложь; // старые письма без Message-ID – риск дубля
    КонецЕсли;
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ
    |   Первые 1
    |   СоответствиеПисемИДокументов.СсылкаНаДокумент КАК Ссылка
    |ИЗ
    |   РегистрСведений.СоответствиеПисемИДокументов КАК СоответствиеПисемИДокументов
    |ГДЕ
    |   СоответствиеПисемИДокументов.MessageID = &MessageID";
    Запрос.УстановитьПараметр("MessageID", MessageID);
    Выборка = Запрос.Выполнить().Выбрать();
    
    Если Выборка.Следующий() Тогда
        Возврат Истина;
    КонецЕсли;
    
    Возврат Ложь;
КонецФункции

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

Процедура ПослеЗаписиДокумента(Документ, Письмо)
    MessageID = Письмо.Свойства.Заголовки.Получить("Message-ID");
    Если Не ПустаяСтрока(MessageID) Тогда
        Запись = РегистрыСведений.СоответствиеПисемИДокументов.СоздатьМенеджерЗаписи();
        Запись.MessageID = MessageID;
        Запись.СсылкаНаДокумент = Документ.Ссылка;
        Запись.Записать();
    КонецЕсли;
КонецПроцедуры

Альтернатива для писем без Message-ID

Часть устаревших почтовых клиентов не отправляет Message-ID. В таких случаях можно добавить в письмо свой уникальный идентификатор – например, вставить в тему письма код UID-метки. Сделать это можно через макет письма-приглашения (для внешних контрагентов) или через автоответчик. Но это уже организационное решение, требующее согласования с контрагентами.

Стратегия постепенного перехода: двухконтурная работа

После реализации дедупликации можно приступать к самому переходному периоду. Не отключайте почту полностью – оставьте её как резервный канал для тех контрагентов, кто ещё не перешёл на 1С:Документооборот. Ведите учёт доли обработанных через ДО документов.

Когда можно отключать почтовый ящик?
ПризнакПочту ещё рано отключатьПора отключать
Доля входящих через ДО менее 80% от общего числа более 95% в течение месяца
Количество дублированных за неделю более 5 0 при отключённой проверке по Message-ID
Наличие Message-ID у всех новых писем не у всех 100% писем содержат заголовок

Поэтапное отключение почтовых ящиков с контролем

  1. Неделя 1–2: Внедрите дедупликацию по Message-ID. Включите логирование – каждое срабатывание записи в регистр. Вручную проверяйте отсутствие дублей.
  2. Неделя 3–4: Переведите часть входящих ящиков в режим «только приём без обработчика» (письма копятся, но не импортируются). Ручная выгрузка писем из этих ящиков запрещена – все документы создаются только через ДО.
  3. Неделя 5–6: Убедитесь, что ни один контрагент не жалуется на отсутствие ответа. Отключите ящик на стороне почтового сервера (перенаправление в ДО).

Важно: Даже после отключения ящика храните архив писем не менее 6 месяцев. По требованию ФНС (согласно действующему порядку) вы обязаны предоставлять подлинники электронных сообщений. В 1С:Документообороте подлинник – это файл письма, прикреплённый к документу. Убедитесь, что все вложения сохранены корректно.

Типичные ошибки и их последствия

Что делать прямо сейчас: план действий

  1. Добавьте регистр сведений СоответствиеПисемИДокументов с измерениями MessageID (строка, 255) и СсылкаНаДокумент (любой документ-корреспондент).
  2. Модифицируйте обработчик входящих писем: перед созданием документа вызывайте проверку ПисьмоУжеОбработано().
  3. Настройте автоматическую запись в регистр после успешного создания документа.
  4. Запустите недельный мониторинг: все ли письма с Message-ID обрабатываются однократно. Зафиксируйте количество дублей до и после.
  5. Начните постепенное отключение почтовых ящиков, используя табличный контроль доли.

Переходный период – это не техническая задача, а управленческий инструмент. Правильно построенная система дедупликации на основе Message-ID избавит вас от ручной сверки и позволит закрыть почтовые каналы безболезненно. Помните: главное – не перекрыть кислород контрагентам. Оставьте им один надёжный канал, а не два дублирующих.

Расширение «НОПик» для 1С — встраиваемый коннектор к внешнему AI с интеллектуальным поиском по базе. Задавайте вопросы обычными словами - AI сам найдёт нужное. 45 дней бесплатно.

Попробовать НОПик →