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

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

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

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

Групповое перепроведение документов — штатная операция 1С:Предприятие 8.3, которая нужна, когда движения по регистрам перестали соответствовать данным документов. Типичные причины: изменили проводку задним числом, исправили номенклатуру или счета учёта в старых документах, восстановили базу из копии, обновили конфигурацию с изменённой логикой проведения. Во всех этих случаях документы выглядят проведёнными, но их движения устарели, и отчёты показывают неверные остатки.

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

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

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

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

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

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

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

Изменили один-два документа задним числомПерепроведите их вручную, а затем выполните восстановление последовательности с даты изменения
Массово исправили данные за закрытый период или обновили конфигурациюИспользуйте обработку группового перепроведения за весь затронутый период
Отчёт показывает неверные остатки, но документы не менялисьСначала проверьте настройки отчёта и итоги регистров — перепроведение может не понадобиться
Нужно перепровести только один вид документов по отборуИспользуйте обработку «Групповое изменение реквизитов» с операцией проведения или произвольный алгоритм

Подготовка перед запуском: что обязательно сделать

Первый шаг — резервная копия информационной базы. Перепроведение массово изменяет движения по регистрам, и если в процессе выяснится, что отбор был задан неверно или в базе есть битые ссылки, откатить изменения без копии будет невозможно. Для файловой базы достаточно скопировать файл 1Cv8.1CD при закрытом сеансе, для клиент-серверной — выполнить выгрузку через конфигуратор или средствами СУБД.

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

Третий шаг — проверить дату запрета изменения данных. Если период, который вы собираетесь перепроводить, закрыт датой запрета редактирования, обработка либо откажется работать, либо пропустит закрытые документы — и результат будет неполным. Либо временно сдвиньте дату запрета, либо осознанно ограничьте перепроведение открытым периодом.

Способ 1: штатная обработка «Групповое перепроведение документов»

В типовых конфигурациях (1С:Бухгалтерия 8, 1С:Управление торговлей, 1С:ERP и других) обработка находится в разделе «Администрирование» → «Обслуживание» → «Корректировка данных» → «Групповое перепроведение документов». В некоторых конфигурациях путь может отличаться: ищите в «Все функции» → «Обработки» или через поиск по команде в интерфейсе. Для доступа нужны права администратора или расширенные права на обслуживание.

Порядок работы: укажите период перепроведения (дату начала и окончания), при необходимости отметьте только нужные типы документов — это существенно сократит время. Запустите выполнение и дождитесь окончания. Обработка последовательно перепроводит документы в хронологическом порядке, что критично для корректного расчёта остатков: партии, взаиморасчёты и себестоимость зависят от порядка проведения.

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

Порядок действий в типовой обработке
  1. 1
    Сделайте резервную копию базы и проверьте дату запрета редактирования
  2. 2
    Откройте «Администрирование → Обслуживание → Групповое перепроведение документов»
  3. 3
    Задайте период и при необходимости ограничьте список типов документов
  4. 4
    Убедитесь, что пользователи не работают с документами этого периода
  5. 5
    Запустите выполнение и дождитесь завершения, не закрывая сеанс
  6. 6
    Изучите протокол: разберите документы с ошибками и перепроведите их после исправления

Способ 2: восстановление последовательностей

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

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

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

Способ 3: групповое изменение реквизитов и программное перепроведение

Обработка «Групповое изменение реквизитов» (в типовых — «Администрирование» → «Обслуживание» → «Корректировка данных») позволяет не только менять значения реквизитов, но и выполнять произвольный алгоритм над отобранными объектами. С её помощью можно отобрать документы по гибкому условию — например, только реализации одного контрагента или поступления по конкретному складу — и выполнить проведение через алгоритм.

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

bsl
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ Ссылка ИЗ Документ.РеализацияТоваровУслуг
|ГДЕ Дата МЕЖДУ &Начало И &Конец И Проведен
|УПОРЯДОЧИТЬ ПО Дата";
Запрос.УстановитьПараметр("Начало", НачалоМесяца(ТекущаяДатаСеанса()));
Запрос.УстановитьПараметр("Конец", КонецМесяца(ТекущаяДатаСеанса()));
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
    Док = Выборка.Ссылка.ПолучитьОбъект();
    Попытка
        Док.Записать(РежимЗаписиДокумента.Проведение);
    Исключение
        ЗаписьЖурналаРегистрации("Перепроведение", УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки());
    КонецПопытки;
КонецЦикла;

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

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

Главный критерий успеха — сходимость учётных данных после перепроведения. Сформируйте ключевые отчёты за обработанный период до и после операции: оборотно-сальдовую ведомость, отчёт по остаткам склада, взаиморасчёты. Сравните итоги: если до перепроведения были расхождения между отчётами и теперь они устранены — цель достигнута. Имеет смысл зафиксировать контрольные цифры до запуска, чтобы было с чем сравнивать.

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

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

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

Протокол обработки
Норма

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

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

Есть документы с ошибками, причины не устранены

Оборотно-сальдовая ведомость за период
Норма

Итоги совпадают с контрольными значениями, нет отрицательных остатков по количеству

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

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

Журнал регистрации
Норма

Нет ошибок проведения за время операции

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

Ошибки записи, конфликты блокировок, отказы контроля

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

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

Вторая ошибка — запуск без учёта зависимых механизмов. В конфигурациях с расчётом себестоимости, НДС и закрытием месяца перепроведение документов не пересчитывает эти итоговые операции: после него нужно заново выполнить регламентные операции закрытия месяца за затронутые периоды. Иначе себестоимость и налоги останутся посчитанными по старым движениям.

Третья группа проблем — технические ограничения. В файловых базах перепроведение большого периода чувствительно к разрывам соединения: обрыв сеанса оставит часть документов необработанной. В клиент-серверных базах возможны управляемые блокировки и таймауты. Для очень больших объёмов разбивайте период на месяцы и запускайте последовательно, контролируя каждый шаг.

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

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

Групповое перепроведение в 1С выполняется через штатную обработку в разделе «Администрирование → Обслуживание», через восстановление последовательностей или программно. Перед запуском обязательны резервная копия, остановка работы пользователей с периодом и проверка даты запрета. После — разбор протокола ошибок и повторное закрытие месяца за затронутые периоды.

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

Перепроведение изменит данные в документах?

Нет, перепроведение не меняет реквизиты документов — оно только заново формирует движения по регистрам на основании текущих данных документа. Однако если логика проведения в конфигурации изменилась (например, после обновления), движения могут отличаться от прежних, и это повлияет на отчёты и итоги.

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

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

Сколько времени занимает групповое перепроведение?

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

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

Откройте протокол обработки или журнал регистрации и разберите каждую ошибку: чаще всего это незаполненные реквизиты, отсутствие остатков на складе или битые ссылки. Исправьте данные в проблемных документах и перепроведите их повторно — уже точечно.

Нужно ли перепроводить документы после обновления конфигурации?

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

Можно ли запустить перепроведение по расписанию?

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