Администрирование · 12 мин
Как перепровести все документы за период в 1С
Как перепровести документы за период в 1С: групповое перепроведение, восстановление последовательности, обработка и типичные ошибки. Пошаговая инструкция.
Перепроведение документов за период — стандартная задача, которая возникает после изменения остатков «задним числом», корректировки закрытого месяца, исправления справочников или сбоев в учёте. Если кто-то провёл или изменил документ прошлой датой, все последующие документы, опирающиеся на те же регистры, могут содержать некорректные движения: неправильные себестоимость, партии, остатки склада.
В 1С есть несколько способов перепровести документы массово: штатная обработка «Групповое перепроведение документов», механизм восстановления последовательностей, а также программное перепроведение через встроенный язык. Выбор зависит от конфигурации, объёма данных и того, нужно ли перепроводить всё подряд или только конкретные виды документов.
Прежде чем запускать любую массовую операцию, обязательно сделайте резервную копию базы. Перепроведение большого периода может занять часы, изменить регламентированную отчётность и привести к расхождениям с уже сданными декларациями. Ниже разберём все способы с точными действиями и ограничениями.
Когда действительно нужно перепроведение, а когда нет
Перепроведение требуется, если документы вводились или изменялись не в хронологическом порядке. Типичный сценарий: бухгалтер внёс приходную накладную прошлым месяцем, а реализации, списания и перемещения после неё уже проведены. Движения этих документов рассчитаны по старым остаткам и теперь не соответствуют действительности.
Ещё одна причина — изменение методики учёта в середине периода: например, поменяли способ оценки запасов, исправили карточку номенклатуры или настройки счетов учёта. В таком случае документы, проведённые по старым правилам, нужно перепровести, чтобы движения сформировались заново.
Не нужно перепроводить всё подряд, если проблема точечная: одна ошибка в одном документе решается перепроведением только этого документа. Массовое перепроведение — тяжёлая операция, и запускать её «на всякий случай» нерационально, особенно в больших базах.
Перепровести документы с даты изменения по текущую
Достаточно перепровести только этот документ
Проверить последовательности и перепровести период
Подготовка: резервная копия и проверка дат запрета
Первый шаг перед любой массовой операцией — резервная копия. В файловой базе достаточно скопировать файл 1Cv8.1CD при отсутствии активных сеансов. В клиент-серверном варианте корректнее делать выгрузку через конфигуратор (Администрирование → Выгрузить информационную базу) или средствами СУБД. Без копии откатить результат перепроведения будет невозможно.
Второй шаг — проверить дату запрета изменения данных. Если период закрыт (Администрирование → Поддержка и обслуживание → Даты запрета изменения данных), перепроведение не выполнится: документы просто не будут записаны. Временно сдвиньте дату запрета или отключите её для пользователя, выполняющего операцию, и верните настройку после завершения.
Третий момент — активные пользователи. Во время перепроведения большого периода желательно, чтобы с базой никто не работал: параллельное проведение документов другими пользователями может привести к блокировкам и снова нарушить хронологию. В клиент-серверной базе можно установить блокировку сеансов на время операции.
Способ 1. Групповое перепроведение документов
В типовых конфигурациях (Бухгалтерия предприятия, Управление торговлей, ERP) есть штатная обработка группового перепроведения. Путь к ней зависит от конфигурации: обычно это раздел «Администрирование» → «Обслуживание» → «Корректировка данных» → «Групповое перепроведение документов». В некоторых версиях обработка доступна через «Все функции» → «Обработки».
Порядок работы в обработке: укажите период — дату начала и окончания. Выберите, какие документы перепроводить: все или только отмеченные виды. Запустите выполнение и дождитесь окончания. Обработка проведёт документы в хронологическом порядке, что и требуется для восстановления корректных движений.
Если период большой, а перепровести нужно только часть видов документов (например, только складские), отметьте именно их — это существенно сократит время. Перепроведение только реализаций без приходов имеет смысл, если проблема касается только списания партий, а приходные документы корректны.
- 1Сделайте резервную копию базы и убедитесь, что дата запрета не мешает
- 2Откройте Администрирование → Обслуживание → Корректировка данных → Групповое перепроведение документов
- 3Укажите период: с даты первого проблемного документа по текущую дату
- 4Отметьте нужные виды документов или оставьте все
- 5Запустите перепроведение и дождитесь завершения
- 6Проверьте журнал: не должно быть документов с ошибками проведения
- 7Верните дату запрета изменения данных на место
Способ 2. Восстановление последовательностей
Механизм последовательностей — это способ 1С отслеживать, до какого момента документы проведены в правильном хронологическом порядке. Если документ проведён «задним числом», граница последовательности откатывается на его дату, и все документы после неё считаются «требующими перепроведения».
Восстановить последовательность можно через «Все функции» → «Стандартные» → «Проведение документов» (в ряде конфигураций — «Операции» → «Проведение документов»). В открывшейся обработке выберите последовательность, установите дату восстановления и нажмите «Восстановить». Система перепроведёт документы, входящие в последовательность, начиная с указанной даты.
Этот способ предпочтительнее группового перепроведения, когда проблема касается именно хронологии по конкретным регистрам: система сама знает, какие документы входят в последовательность, и не трогает лишнего. Ограничение — последовательности есть не во всех конфигурациях и не по всем регистрам.
Способ 3. Программное перепроведение через встроенный язык
Если штатных средств недостаточно — например, нужно перепровести документы по сложному отбору или с особыми условиями — используют код на встроенном языке. Это работа для специалиста с правами на запуск внешних обработок или доступом к конфигуратору.
Типовой подход: запросом выбираются документы за период с сортировкой по дате, затем в цикле каждый объект получается методом ПолучитьОбъект() и записывается в режиме проведения. Важно проверять, что документ не помечен на удаление, и обрабатывать исключения, чтобы одна ошибка не остановила весь процесс.
Запрос = Новый Запрос("ВЫБРАТЬ Ссылка ИЗ Документ.РеализацияТоваровУслуг ГДЕ Дата МЕЖДУ &Нач И &Кон УПОРЯДОЧИТЬ ПО Дата"); Запрос.УстановитьПараметр("Нач", НачалоПериода); Запрос.УстановитьПараметр("Кон", КонецПериода); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ДокОбъект = Выборка.Ссылка.ПолучитьОбъект(); Попытка ДокОбъект.Записать(РежимЗаписиДокумента.Проведение); Исключение Сообщить("Ошибка: " + Выборка.Ссылка + " — " + ОписаниеОшибки()); КонецПопытки; КонецЦикла;Программный способ даёт максимум гибкости, но и максимум рисков: код, запущенный в транзакции без обработки ошибок, может оставить базу в промежуточном состоянии. Тестируйте такую обработку сначала на копии базы и на маленьком периоде.
Перепроведение месяца в средней по объёму базе может занять от нескольких минут до нескольких часов. Запускайте операцию в нерабочее время и не прерывайте её принудительно: оборванное перепроведение оставит часть документов со старыми движениями, и понять, где остановился процесс, будет сложно.
Проверка результата после перепроведения
После завершения операции убедитесь, что она прошла корректно. Во-первых, проверьте журнал сообщений: все ошибки проведения должны быть разобраны. Документ, который не удалось провести (например, из-за недостатка остатков), остался с неактуальными движениями или вовсе распроведён — такие случаи нужно исправлять вручную.
Во-вторых, сверьте ключевые отчёты до и после: оборотно-сальдовую ведомость, остатки склада, ведомость по партиям. Если база ведёт регламентированный учёт, проверьте, не изменились ли данные закрытых периодов, по которым сдана отчётность.
В-третьих, если использовались последовательности, проверьте их границы: после восстановления граница должна стоять на текущей дате (или на дате последнего проведённого документа). Граница, «застрявшая» в прошлом, означает, что часть документов не перепроведена.
Как проверить результат
Нет ошибок проведения документов
Есть документы, которые не удалось провести
Стоит на текущей дате или на последнем документе
Граница в прошлом периоде
Совпадают с ожидаемыми, нет отрицательных остатков
Минусовые остатки, расхождения с ОСВ
Типичные ошибки и ограничения
Самая частая ошибка — запуск перепроведения без резервной копии. Вторая по частоте — забытая дата запрета изменения данных: операция внешне «отработала», но документы закрытого периода не провелись, и проблема осталась. Третья — перепроведение при работающих пользователях, которые параллельно проводят новые документы и снова ломают хронологию.
Отдельная ситуация — обмены данными. Если база участвует в синхронизации (с другой базой 1С, сайтом, кассами), массовое перепроведение зарегистрирует изменения по всем документам, и в следующий сеанс обмена уйдёт огромный пакет данных. Учитывайте это при планировании операции.
Помните и об ограничении: перепроведение не исправляет ошибки в самих данных. Если в документе неверно указан склад, контрагент или количество, перепроведение лишь заново запишет те же неправильные движения. Сначала исправляйте данные, потом перепроводите.
Что важно запомнить
Перепроводите документы через штатную обработку группового перепроведения или восстановление последовательностей, программный способ — только при нестандартных отборах. Обязательные условия: резервная копия, снятый запрет изменения периода, отсутствие работающих пользователей и проверка журнала ошибок после завершения.
Частые вопросы
Сколько времени занимает перепроведение документов за год?
Зависит от объёма базы, количества документов и производительности сервера: от десятков минут до нескольких часов. В файловых базах процесс обычно медленнее, чем в клиент-серверных. Чтобы сократить время, перепроводите только нужные виды документов и запускайте операцию в нерабочее время.
Изменится ли сданная отчётность после перепроведения закрытого периода?
Да, может измениться, если движения документов после перепроведения отличаются от прежних. Поэтому перепроведение периодов, по которым сданы декларации, выполняют только осознанно: сначала сравнивают отчёты до и после на копии базы, а при расхождениях готовят уточнённые декларации.
Что делать, если часть документов не провелась с ошибками?
Откройте журнал сообщений и разберите каждую ошибку. Чаще всего причины — недостаток остатков на складе, незаполненные обязательные реквизиты или дата запрета. Исправьте причину в конкретных документах и перепроведите их повторно, а затем снова перепроведите документы после их даты, чтобы восстановить хронологию.
Можно ли перепровести только один вид документов, например реализации?
Да. В обработке группового перепроведения отметьте только нужные виды документов. Учтите, что если реализации зависят от приходных документов (по партиям, остаткам), перепроведение одних реализаций без проверки приходов может не решить проблему полностью.
Чем восстановление последовательности лучше группового перепроведения?
Восстановление последовательности перепроводит только документы, входящие в последовательность, и только начиная с границы нарушения — это точечнее и быстрее. Групповое перепроведение обрабатывает весь указанный период целиком. Если в конфигурации последовательности настроены по нужным регистрам, предпочтительнее использовать их.
Нужно ли перепроводить документы после обновления конфигурации?
Обычно нет: обновление меняет программный код, а не движения документов. Исключение — случаи, когда в обновлении исправлена ошибка формирования движений: тогда в описании обновления прямо указывается необходимость перепроведения, и выполнять его нужно по инструкции к релизу.