Администрирование · 12 мин
Как очистить последовательность документов в 1С
Как очистить последовательность документов в 1С 8.3: где находится обработка, пошаговые действия, риски, проверка результата и типичные ошибки при сбросе границы.
Последовательность документов в 1С — это механизм, который гарантирует, что документы проводились в правильном хронологическом порядке. Если пользователь провёл документ «задним числом» и не перепровёл последующие, граница последовательности «откатывается», а отчёты и расчёт себестоимости могут показывать недостоверные данные. В большинстве типовых конфигураций проблему решает восстановление последовательности, но иногда требуется именно её очистка — полный сброс границы и регистрации документов.
Очистка последовательности нужна в ограниченном числе ситуаций: при отказе от механизма последовательностей в пользу другого способа контроля, при исправлении повреждённых данных регистра, при подготовке базы к свёртке или переносу, а также когда восстановление штатными средствами даёт сбои из-за огромного объёма документов. Операция относится к административным и выполняется в режиме «1С:Предприятие» через специальные обработки либо в конфигураторе.
Прежде чем очищать последовательность, важно понимать последствия: после сброса границы система перестанет отслеживать актуальность проведения, и часть регламентных операций (например, расчёт себестоимости в некоторых конфигурациях) может потребовать повторного выполнения. Поэтому очистка всегда начинается с резервной копии и анализа того, какие подсистемы зависят от последовательности.
Что такое последовательность документов и зачем её очищают
Последовательность в 1С — это объект метаданных, объединяющий документы, влияющие друг на друга по времени. У последовательности есть «граница» — момент, до которого все документы гарантированно проведены в правильном порядке. Когда пользователь изменяет или проводит документ задним числом, граница автоматически сдвигается на этот документ, сигнализируя: всё, что позже, нужно перепровести.
Штатный сценарий — восстановление последовательности, то есть перепроведение документов от границы до текущей даты. Но бывают случаи, когда требуется именно очистка: убрать регистрацию документов в последовательности или сбросить границу в начало. Типичные причины: механизм больше не используется и только замедляет проведение, данные регистра повреждены, база готовится к свёртке, а также необходимость снять блокировки при массовой загрузке данных через обмен.
Когда очистка оправдана, а когда лучше восстановление
Не путайте очистку и восстановление. Восстановление перепроводит документы и возвращает учёт в актуальное состояние — это безопасная и рекомендуемая операция. Очистка же лишь удаляет информацию о принадлежности документов к последовательности или сбрасывает границу, не исправляя учётные данные. Если проблема в том, что отчёты «поехали» из-за документов задним числом, очистка не поможет — нужно восстановление.
Очистка оправдана, когда: последовательность исключают из прикладной логики (например, перевели расчёт на другой механизм), выполняется техническая свёртка базы, регистрация в последовательности накопила миллионы записей и тормозит проведение, а контроль порядка документов ведётся другими средствами. Во всех остальных случаях сначала попробуйте восстановление.
Как выбрать действие
Подготовка: резервная копия и анализ зависимостей
Первый обязательный шаг — резервная копия базы. Для файловой базы достаточно скопировать файл 1Cv8.1CD при отсутствии активных сеансов либо выполнить выгрузку в dt через конфигуратор (Конфигурация — Загрузить/выгрузить информационную базу). Для клиент-серверной базы делайте копию средствами СУБД (MS SQL, PostgreSQL) — это быстрее и надёжнее выгрузки в dt на больших объёмах.
Второй шаг — выяснить, какие механизмы конфигурации используют последовательность. Откройте конфигуратор, найдите объект в ветке «Документы — Последовательности» и посмотрите список входящих документов и измерений. В типовых конфигурациях (УТ, КА, ERP) с последовательностями связаны партионный учёт и расчёт себестоимости: очистка без понимания этих связей может потребовать полного пересчёта партий.
Способы очистки последовательности
Через типовые обработки в режиме «1С:Предприятие»
В типовых конфигурациях операции с последовательностями сосредоточены в разделе администрирования. В УТ 11 и ERP это «НСИ и администрирование — Финансовый результат и контроллинг» либо обработки из раздела «Операции». В старых конфигурациях (УПП 1.3, УТ 10.3) используется обработка «Проведение по партиям» и «Восстановление последовательностей» (Операции — Обработки), где можно как восстановить, так и сдвинуть границу. Полной очистки регистрации штатные обработки обычно не делают — они работают с границей и перепроведением.
Через установку границы в конфигураторе
В конфигураторе доступна команда «Администрирование — Установка границы последовательности» (в некоторых версиях платформы пункт находится в меню «Операции»). Здесь можно установить границу на конкретную дату или документ. Установка границы на самый ранний документ фактически «обнуляет» актуальность последовательности, а установка на текущий момент помечает все документы как актуальные без перепроведения — используйте это осознанно, только если уверены в корректности учёта.
Программная очистка
Для полного контроля используют встроенный язык. Менеджер последовательности позволяет установить границу, а набор записей регистра последовательности — удалить регистрацию документов. Типовой приём — цикл по документам последовательности с очисткой движений по регистру последовательности либо установка границы на пустой момент времени. Такой код выполняют через внешнюю обработку в монопольном режиме.
// Установка границы последовательности на текущий момент
Последовательности.ПартионныйУчет.УстановитьГраницу(ТекущаяДатаСеанса());
// Очистка регистрации документа в последовательности
Набор = Последовательности.ПартионныйУчет.СоздатьНаборЗаписей();
Набор.Отбор.Регистратор.Установить(ДокументСсылка);
Набор.Записать();Имя последовательности в коде должно совпадать с именем объекта метаданных в вашей конфигурации — уточните его в конфигураторе. Перед массовой обработкой протестируйте код на одном документе и на копии базы: ошибка в отборе может очистить регистрацию у лишних документов.
Пошаговый порядок безопасной очистки
Независимо от выбранного способа придерживайтесь единого порядка. Он минимизирует риск потери данных и позволяет откатиться на любом этапе.
- 1Сделайте резервную копию базы и убедитесь, что она разворачивается
- 2Завершите работу всех пользователей и фоновых заданий, включите монопольный режим
- 3Зафиксируйте текущее положение границы последовательности (скриншот или запись)
- 4Выполните очистку выбранным способом: обработка, установка границы или код
- 5Проверьте границу и состояние регистра последовательности
- 6Запустите зависимые регламентные операции (расчёт себестоимости, закрытие месяца) и сверьте отчёты с контрольными значениями, снятыми до очистки
- 7Верните базу в рабочий режим и сообщите пользователям о выполненных действиях
Контрольные значения перед очисткой снимите по ключевым отчётам: оборотно-сальдовая ведомость, отчёт по себестоимости, остатки товаров. После операции те же отчёты за тот же период должны дать сопоставимые цифры — очистка сама по себе не меняет учётные данные, но зависимые пересчёты могут.
Проверка результата и типичные ошибки
После очистки откройте установку границы последовательности и убедитесь, что граница соответствует задуманному: либо сброшена, либо установлена на нужный момент. Дополнительно проверьте, что проведение новых документов не вызывает ошибок, а регламентные операции закрытия периода выполняются штатно.
Как проверить результат
Соответствует запланированному моменту
Граница не изменилась или стоит на неожиданном документе
Проводится без ошибок за обычное время
Ошибки записи в регистр последовательности или резкое замедление
Расчёт себестоимости и закрытие месяца завершаются успешно
Операция требует восстановления последовательности или падает с ошибкой
Показатели совпадают со снятыми до очистки
Остатки или себестоимость изменились без объяснимых причин
Если после очистки обнаружились расхождения в отчётах, не пытайтесь «дочищать» дальше — восстановите базу из копии и повторите процедуру с анализом зависимостей. Повторные эксперименты на рабочей базе только увеличивают объём исправлений.
Частые вопросы
Чем очистка последовательности отличается от восстановления?
Восстановление перепроводит документы от границы до текущей даты и приводит учёт в актуальное состояние. Очистка лишь удаляет регистрацию документов в последовательности или сбрасывает границу, не исправляя данные учёта. Если проблема в расхождении отчётов, нужно восстановление.
Потеряются ли документы при очистке последовательности?
Нет. Очистка затрагивает только записи регистра последовательности и положение границы. Сами документы, их движения по регистрам учёта и проводки остаются нетронутыми — если не выполнялось дополнительное перепроведение или пересчёт.
Можно ли очистить последовательность без конфигуратора?
Да, если в конфигурации есть штатные обработки работы с последовательностями (например, «Проведение по партиям») или если подготовить внешнюю обработку с кодом установки границы. Но права администратора и монопольный доступ к базе потребуются в любом случае.
Почему после установки границы «на сегодня» отчёты всё равно расходятся?
Установка границы не перепроводит документы — она лишь сообщает системе, что порядок считается корректным. Если документы задним числом реально нарушили расчёты, исправить их может только восстановление последовательности или регламентный пересчёт партий.
Как узнать, какие последовательности есть в базе?
Откройте конфигуратор и разверните ветку «Документы — Последовательности» в дереве метаданных. Там видны все последовательности, входящие в них документы и измерения. В режиме предприятия положение границ смотрят через обработки восстановления или установку границы.
Нужно ли очищать последовательности перед свёрткой базы?
Обычно свёртка выполняется штатной обработкой, которая сама формирует документы ввода остатков и корректно обрабатывает последовательности. Очищать их заранее не требуется; имеет смысл проверить и при необходимости сбросить границы уже после свёртки и сверки остатков.
Что важно запомнить
Очистка последовательности — административная операция, которая сбрасывает границу или регистрацию документов, но не исправляет учётные данные. Выполняйте её только после резервного копирования, в монопольном режиме и с проверкой зависимых регламентных операций. Если цель — актуализировать отчёты после проведения задним числом, используйте восстановление последовательности.