При обновлении конфигурации «1С:Бухгалтерия предприятия, редакция 2.0» до релиза 2.0.66.60 и выше пользователи часто сталкиваются с неприятной ситуацией: в списке «Текущие дела ЭДО» внезапно возникают сотни или даже тысячи документов за прошлые периоды (2013–2016 годы) со статусом «На подпись». При этом данные документы уже давно были подписаны, утверждены и юридически закрыты несколько лет назад.
В этой статье мы разберем причины возникновения данной ошибки, проанализируем ситуацию с технической стороны и предложим несколько эффективных способов очистки списка текущих дел без риска для бухгалтерского учета и отношений с контрагентами.
Разберем ситуацию: в новых релизах 1С происходит масштабная модернизация подсистемы электронного документооборота. Разработчики переводят конфигурацию на работу с обновленной Библиотекой электронных документов (БЭД). Это влечет за собой полное изменение архитектуры хранения данных ЭДО.
Ранее информация о состояниях обмена могла храниться в одних объектах метаданных (справочниках), а после обновления система переносит их в новые регистры, такие как РегистрСведений.СостоянияЭлектронныхДокументов. В процессе миграции данных, если старые документы имели специфические статусы или если цепочка обмена не была завершена формально (с точки зрения новых алгоритмов), система помечает их как требующие действия пользователя. Именно поэтому в интерфейсе мы видим «999+» документов, ожидающих обработки.
Рассмотрим предложение некоторых пользователей просто аннулировать эти документы. Важно понимать: аннулирование в ЭДО — это юридически значимое действие.
Если вы выберете старый документ и нажмете кнопку «Аннулировать», система выполнит следующие действия:
В результате ваш поставщик или покупатель получит в своей программе уведомление об аннулировании документа пятилетней давности. Это создаст путаницу, подозрения в налоговых рисках и заставит контрагента тратить время на выяснение причин. Поэтому данный метод мы категорически не рекомендуем.
Проанализируем самый быстрый и эффективный способ, который помог пользователям на практике. Нам необходимо принудительно установить документам статус Завершен. Для этого воспользуемся типовой обработкой «Групповое изменение реквизитов».
Выполним следующие шаги:
ЭлектронныйДокументВходящий (или ЭлектронныйДокументИсходящий в зависимости от того, какие документы «зависли»).СостояниеЭДО и установим ему значение Завершен.ДокументОбъект напрямую, минуя логические проверки кода при записи.После выполнения обработки документы должны исчезнуть из списка «На подпись».
Посмотрим на проблему глубже. Список «Текущие дела ЭДО» в новых версиях строится на основании данных регистра сведений СостоянияЭлектронныхДокументов. Если мы не хотим менять сами документы, мы можем программно скорректировать записи в этом регистре.
Для каждого «проблемного» документа в этом регистре должна существовать (или быть создана) запись со следующими параметрами:
Завершен.Программист может написать простой скрипт для заполнения этого регистра. Рассмотрим пример логики на языке 1С:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЭлектронныйДокументВходящий.Ссылка КАК Ссылка
|ИЗ
| Документ.ЭлектронныйДокументВходящий КАК ЭлектронныйДокументВходящий
|ГДЕ
| ЭлектронныйДокументВходящий.Дата < &ДатаОтсечки
| И ЭлектронныйДокументВходящий.СостояниеЭДО <> ЗНАЧЕНИЕ(Перечисление.СостоянияЭДО.Завершен)";
Запрос.УстановитьПараметр("ДатаОтсечки", '20200101000000');
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
МенеджерЗаписи = РегистрыСведений.СостоянияЭлектронныхДокументов.СоздатьМенеджерЗаписи();
МенеджерЗаписи.ЭлектронныйДокумент = Результат.Ссылка;
МенеджерЗаписи.Прочитать();
МенеджерЗаписи.Состояние = Перечисления.СостоянияЭДО.Завершен;
МенеджерЗаписи.Записать();
КонецЦикла;
В некоторых версиях БЭД в интерфейсе «Текущие дела ЭДО» предусмотрена возможность перемещения документов в архив без отправки данных контрагенту. Выделите список старых документов, нажмите правую кнопку мыши и проверьте наличие команд:
Эти действия меняют статус документа только в вашей базе данных, что является безопасным решением.
Разберем еще один системный подход. В настройках параметров обмена электронными документами иногда доступно поле «Дата начала работы». Если установить в этом поле дату текущего года (например, 01.01.2024), то механизмы формирования списка «Текущие дела» начнут игнорировать все события и документы, созданные ранее этой даты. Это самый «чистый» способ с точки зрения целостности данных, так как он не требует массового изменения объектов.
Мы выяснили, что появление старых документов — это следствие технического обновления структуры метаданных. Подведем итоги наших действий:
Завершен.СостоянияЭлектронныхДокументов.Такой комплексный подход позволит вам вернуть рабочее место бухгалтера в нормальное состояние и избежать лишних вопросов со стороны контролирующих органов и бизнес-партнеров.