К статье
Практический материал

Администрирование · 10 мин

Как настроить последовательность документов в 1С

Как работает механизм последовательностей в 1С, как настроить, восстановить и проверить последовательность документов, типичные ошибки и способы их устранения.

Последовательность документов в 1С — это механизм, который гарантирует, что документы проводятся в хронологическом порядке и что итоги (остатки, взаиморасчёты, себестоимость) рассчитаны корректно. Если пользователь провёл документ «задним числом», все более поздние документы в последовательности могут содержать устаревшие данные движений, и границу последовательности нужно восстановить.

Механизм чаще всего применяется там, где поздний документ зависит от раннего: расчёт себестоимости при списании товаров, партионный учёт, расчёты с контрагентами по ФИФО. В типовых конфигурациях последовательности уже настроены, но администратору нужно уметь контролировать границу, восстанавливать её и понимать, когда нарушение последовательности критично, а когда допустимо.

Ниже разобрано, как устроен механизм, как его настроить в конфигураторе, как восстановить последовательность штатными средствами и какие ошибки встречаются чаще всего.

Что такое последовательность документов и когда она нужна

Последовательность — это объект метаданных, который объединяет документы, влияющие на общие итоги. У последовательности есть «граница» — момент времени, до которого все документы гарантированно проведены в правильном порядке и итоги актуальны. Всё, что позже границы, считается потенциально устаревшим.

Когда документ, входящий в последовательность, проводится с датой раньше текущей границы, граница автоматически сдвигается на момент этого документа. Это сигнал системе: движения всех последующих документов могли стать неактуальными, потому что они рассчитывались от старых остатков.

Типичный пример — партионный учёт. Поступление товара формирует партию, реализация списывает её по ФИФО. Если бухгалтер ввёл поступление прошлым месяцем после того, как реализации уже проведены, списание рассчитано от неверных остатков. Восстановление последовательности перепроведёт реализации и исправит себестоимость.

Как настроить последовательность в конфигураторе

Настройка выполняется в конфигураторе в ветке «Документы» → «Последовательности». Создайте новый объект или откройте существующий и задайте ключевые свойства.

В свойстве «Движения» укажите регистры, на которые влияют документы последовательности — именно по ним система определяет, какие итоги зависят от порядка проведения. В свойстве «Документы» отметьте виды документов, входящие в последовательность. В табличной части «Измерения» можно задать разрезы (например, организацию), чтобы граница отслеживалась отдельно по каждому значению измерения.

Порядок настройки в конфигураторе
  1. 1
    Откройте конфигуратор, ветка «Документы» → «Последовательности»
  2. 2
    Создайте последовательность или откройте существующую
  3. 3
    В свойстве «Документы» отметьте виды документов, влияющих на общие итоги
  4. 4
    В свойстве «Движения» укажите регистры, итоги которых зависят от порядка проведения
  5. 5
    При необходимости добавьте измерения (например, «Организация») для раздельного контроля границы
  6. 6
    Обновите конфигурацию базы данных и проверьте поведение на тестовой копии

После изменения состава документов или измерений обязательно обновите конфигурацию базы данных. Проверяйте изменения на копии базы: ошибочный состав последовательности может привести к массовому перепроведению и блокировке работы пользователей.

Как восстановить последовательность в пользовательском режиме

В типовых конфигурациях восстановление выполняется через обработку «Проведение документов» (в старых версиях — «Восстановление последовательностей»), обычно в разделе «Операции» или «Администрирование». В обработке выберите вариант «Проведение документов» или «Восстановление последовательностей», укажите период и запустите выполнение.

Система перепроведёт документы от текущей границы до указанной даты в хронологическом порядке. По завершении граница последовательности переместится на конец выбранного периода — это и есть признак успешного восстановления.

Альтернативный способ — запуск из кода через метод Последовательности.ИмяПоследовательности.Восстановить(Дата) или через установку границы методом УстановитьГраницу(). Это используют в регламентных заданиях и обработках закрытия месяца.

bsl
// Восстановление последовательности на указанную дату
Последовательности.ПартионныйУчет.Восстановить(КонецМесяца(ТекущаяДатаСеанса()));

// Проверка текущей границы
Граница = Последовательности.ПартионныйУчет.ПолучитьГраницу();
Сообщить("Граница: " + Граница.Дата);

Как проверить результат и контролировать границу

Простейший контроль — сравнить границу последовательности с текущей датой. Если граница «отстаёт» на дни или недели, значит, регулярно вводятся документы задним числом, а восстановление не выполняется. В типовых решениях состояние последовательностей видно в обработке закрытия месяца: нарушенные этапы подсвечиваются.

После восстановления сверьте ключевые отчёты (остатки склада, взаиморасчёты, себестоимость) с данными до перепроведения. Изменения сумм — нормальное следствие исправления движений, но резкие расхождения требуют анализа конкретных документов.

Контрольные точки

Как проверить результат

Граница последовательности
Норма

Соответствует концу восстановленного периода

Тревожный признак

Осталась на старой дате — перепроведение не завершилось

Остатки в отчётах
Норма

Изменились ожидаемо, расхождения объяснимы

Тревожный признак

Отрицательные остатки или необъяснимые суммы

Журнал перепроведения
Норма

Все документы проведены без ошибок

Тревожный признак

Есть непроведённые документы с сообщениями об ошибках

Типичные ошибки и ограничения механизма

Частая ошибка — включать в последовательность слишком много документов «на всякий случай». Каждый лишний вид документа замедляет проведение (система обновляет границу) и расширяет объём перепроведения при восстановлении. Включайте только те документы, чьи движения действительно зависят от порядка.

Вторая ошибка — игнорировать отставание границы месяцами. Чем длиннее период восстановления, тем дольше перепроведение и выше риск столкнуться с ошибками в старых документах: закрытыми периодами, удалёнными контрагентами, изменёнными счетами учёта.

Ограничение механизма: восстановление не исправляет документы, которые не проводятся по прикладным причинам (нет остатка, не заполнены реквизиты). Такие документы придётся исправлять вручную, иначе граница не сдвинется дальше проблемного места.

Типичные ошибки
01
Включение в последовательность лишних документов — замедление проведения и лишнее перепроведение
02
Запуск восстановления в рабочее время — блокировки и конфликты с пользователями
03
Игнорирование отставания границы — накопление неактуальных движений за длительный период
04
Прерывание перепроведения — граница остаётся в промежуточном состоянии, часть движений устарела
05
Перепроведение через закрытый период без снятия даты запрета — ошибки проведения

Как выбрать подходящий способ: ручной, регламентный или через закрытие месяца

Для разового исправления после ввода документа задним числом достаточно ручного восстановления через обработку. Для регулярной работы удобнее регламентное задание, которое восстанавливает последовательность ночью, когда пользователей нет. В типовых конфигурациях ERP и Комплексной автоматизации восстановление встроено в процедуру закрытия месяца — это предпочтительный вариант, поскольку перепроведение согласовано с расчётом себестоимости.

Сравнение вариантов восстановления

Ручное восстановление

Подходит для разового исправления; требует контроля администратора и свободного окна без пользователей

Регламентное задание

Автоматизирует ежедневное восстановление; требует настройки расписания и контроля ошибок выполнения

Закрытие месяца

Встроено в типовые конфигурации, согласовано с расчётом себестоимости; работает только помесячно

Маршрут решения

Как выбрать действие

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

Практические рекомендации по эксплуатации

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

Для крупных баз рассмотрите уменьшение состава последовательностей или переход на механизмы расчёта итогов, не требующие строгого порядка проведения, если прикладная логика это допускает. В современных типовых решениях часть задач партионного учёта решается расчётом себестоимости отдельным регламентным этапом, что снижает зависимость от классических последовательностей.

Перед массовым восстановлением полезно выгрузить список документов, входящих в последовательность за период, и проверить их на типовые проблемы: незаполненные реквизиты, отрицательные остатки. Это сокращает число остановок перепроведения.
ПЗ
Практическое замечание
Итог

Что важно запомнить

Последовательность гарантирует правильный порядок проведения документов, влияющих на общие итоги. Настройка выполняется в конфигураторе, восстановление — через обработку проведения или регламентно. Контролируйте границу, восстанавливайте её в нерабочее время и проверяйте отчёты после перепроведения.

Частые вопросы

Как узнать, нарушена ли последовательность в моей базе?

Сравните границу последовательности с текущей датой: в типовых конфигурациях это видно в обработке закрытия месяца или через код ПолучитьГраницу(). Если граница раньше текущей даты — есть документы с потенциально неактуальными движениями.

Что будет, если не восстанавливать последовательность?

Отчёты и итоги по затронутым регистрам могут показывать некорректные данные: неверную себестоимость, остатки партий, взаиморасчёты. Ошибки накапливаются и усложняют закрытие периода.

Можно ли восстановить последовательность, если период закрыт датой запрета?

Нужно временно снять или сдвинуть дату запрета изменения данных, иначе перепроведение документов в закрытом периоде завершится ошибкой. После восстановления верните дату запрета на место.

Обязательно ли перепроводить все документы при восстановлении?

Перепроводятся только документы, входящие в последовательность, начиная с текущей границы. Можно ограничить период, но граница сдвинется только до конца выбранного интервала.

Почему восстановление зависает или идёт очень долго?

Обычно это следствие большого объёма документов, активных пользователей в базе или остановки на ошибочном документе. Запускайте процесс в нерабочее время, восстанавливайте помесячно и проверяйте журнал ошибок.

Можно ли удалить последовательность из конфигурации?

Можно, но только если прикладная логика не опирается на порядок проведения. Удаление не испортит существующие движения, однако система перестанет отслеживать нарушения порядка — оцените последствия на тестовой копии.