Перепроверка документов в 1С:Предприятие — стандартная процедура, с которой регулярно сталкиваются бухгалтеры, кладовщики и администраторы систем. Она требуется после обновлений платформы, исправления ошибок в алгоритмах или при выявлении расхождений в учете. Однако массовая перепроверка за период может занять часы, если делать это вручную. В этой статье разберем все способы — от стандартных инструментов 1С до программных обходных путей для ускорения процесса.
Многие пользователи ошибочно считают, что перепроверить документы можно только через Операции → Проведение документов, но это не так. В зависимости от конфигурации (1С:Бухгалтерия, Управление торговлей, ERP или ЗУП) доступны разные механизмы — от встроенных обработок до SQL-запросов. Мы покажем, как избежать типичных ошибок (например, зависания системы при большом объеме данных) и автоматизировать процесс.
Особое внимание уделим критическим моментам:
- 🔹 Блокировка базы — почему перепроверка может "подвесить" работу других пользователей и как этого избежать.
- 🔹 Очередность проведения — в каком порядке нужно перепроверить документы, чтобы не сломать ссылки между ними (например,
Реализация→Счет-фактура). - 🔹 Логи ошибок — где искать причины, если документ не перепровелся, и как их исправить.
1. Когда требуется перепроверка документов в 1С
Перепроверка — не просто "профилактическая" процедура. Ее проводят в строго определенных случаях, иначе рискуете нарушить целостность данных. Вот ключевые ситуации, когда это необходимо:
🔧 После обновления конфигурации. Разработчики 1С регулярно выпускают патчи, исправляющие ошибки в алгоритмах проведения документов. Например, в 1С:Бухгалтерии 3.0 обновление от 2023 года изменило логику расчета НДС для экспортных операций. Если не перепроверить документы за прошлые периоды, отчетность будет некорректной.
⚠️ При выявлении расхождений между регистрами. Например, если сумма в Регистре накопления "Товары на складах" не сходится с данными Документа "Инвентаризация", перепроверка поможет синхронизировать данные.
📊 Перед закрытием периода. Бухгалтеры часто перепроверяют все документы за месяц перед формированием Баланса или Декларации по НДС, чтобы избежать ошибок в отчетности.
💻 После восстановления базы из резервной копии. Если база была повреждена и восстановлена из бэкапа, некоторые документы могли провестись некорректно. Перепроверка устраняет такие артефакты.
⚠️ Внимание: Если перепроверка требуется из-за ошибок в первичных документах (например, неверно указанная сумма в Поступлении товаров), сначала исправьте их вручную. Массовая перепроверка не корректирует исходные данные — она только пересчитывает итоги!
2. Стандартные способы перепроверки в типовой конфигурации
В большинстве конфигураций 1С есть встроенные инструменты для перепроверки. Рассмотрим их на примере 1С:Бухгалтерии 3.0 и 1С:Управления торговлей 11.
📌 Способ 1: Через журнал документов
- Откройте нужный журнал (например,
Покупки → Поступление (акты, накладные)). - Установите фильтр по периоду (кнопка
Еще → Настроить список → Отбор). - Выделите документы (можно использовать
Ctrl+Aдля выбора всех). - Нажмите
Действия → Провести(илиПерепровести, если документ уже был проведен).
📌 Способ 2: Обработка "Групповое проведение документов"
Эта обработка есть во всех типовых конфигурациях. Чтобы ее найти:
- Перейдите в
Все функции → Обработки(включите отображение всех команд черезСервис → Параметры → Заголовок окна → Показывать все команды). - Выберите
Групповое проведение документов. - Укажите период, тип документов (например,
Реализация товаров и услуг) и нажмитеВыполнить.
⚠️ Ограничение: В 1С:ERP 2.5 групповая обработка может не показать документы с ошибками проведения. В этом случае используйте Регламентные операции → Проведение документов.
Убедиться, что у пользователя есть права на проведение документов|
Сделать резервную копию базы (обязательно!)|
Закрыть 1С у всех пользователей (если перепроверка затрагивает критические данные)|
Проверить свободное место на диске (для больших баз требуется до 20% от размера IB)-->
3. Перепроверка через консоль запросов (для опытных пользователей)
Если стандартные методы не подходят (например, нужно перепроверить документы с определенным статусом или по сложному фильтру), используйте консоль запросов. Этот способ требует знаний языка 1С:Предприятие, но позволяет гибко настроить условия.
🔧 Пример запроса для выборки документов:
ВЫБРАТЬ
Ссылка КАК Документ
ИЗ
Документ.РеализацияТоваровУслуг КАК Реализация
ГДЕ
Реализация.Дата МЕЖДУ &НачалоПериода И &КонецПериода
И Реализация.ПометкаУдаления = ЛОЖЬ
🔧 Код для массового проведения (вставляйте в Обработка → Выполнить код):
Процедура ПерепровестиДокументы()
НачалоПериода = '20260101';
КонецПериода = '20260131';
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Ссылка КАК Документ
|ИЗ
| Документ.РеализацияТоваровУслуг КАК Реализация
|ГДЕ
| Реализация.Дата МЕЖДУ &НачалоПериода И &КонецПериода";
Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода);
Запрос.УстановитьПараметр("КонецПериода", КонецПериода);
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
ДокументОбъект = Выборка.Документ.ПолучитьОбъект();
Попытка
ДокументОбъект.Провести();
Сообщить("Перепроведен: " + Выборка.Документ);
Исключение
Сообщить("Ошибка при проведении: " + Выборка.Документ + " | " + ОписаниеОшибки());
КонецПопытки;
КонецЦикла;
КонецПроцедуры
⚠️ Предупреждение: Этот метод может заблокировать базу на долгое время, если документов много. Для баз с более чем 10 000 документов за период используйте фоновое задание (см. следующий раздел).
Если выборка документов занимает более 10 минут, разбейте период на более мелкие интервалы (например, по неделям). Также проверьте наличие индексов в таблицах базы данных — их отсутствие может замедлять запросы в 10-100 раз. Для диагностики используйте Что делать, если запрос выполняется слишком долго?
План выполнения запроса (кнопка F9 в консоли запросов).
4. Перепроверка в фоновом режиме (для больших баз)
Если в базе более 50 000 документов за период, стандартные методы приведут к зависанию интерфейса. В этом случае используйте фоновые задания — они позволяют продолжить работу в 1С, пока документы перепроверяются в background.
🔧 Как запустить фоновое задание:
- Откройте
Администрирование → Фоновые задания. - Создайте новое задание с типом
Групповое проведение документов. - Укажите параметры:
- 📅 Период — даты начала и конца.
- 📄 Типы документов — выберите нужные (например,
Поступление товаров,Реализация). - ⚙️ Режим выполнения —
В фоновом режиме.
Выполнить.📊 Таблица: Сравнение методов перепроверки
| Метод | Скорость | Макс. кол-во документов | Блокировка базы | Требует прав администратора |
|---|---|---|---|---|
| Ручная перепроверка через журнал | Низкая | До 1 000 | Да | Нет |
| Групповая обработка | Средняя | До 10 000 | Да | Нет |
| Консоль запросов + код | Высокая | До 50 000 | Да | Да |
| Фоновое задание | Высокая | Без ограничений | Нет | Да |
⚠️ Внимание: Фоновые задания в 1С:Предприятие 8.3 могут конфликтовать с регламентными задачами (например, Обмен с банком или Расчет зарплаты). Перед запуском проверьте расписание в Администрирование → Регламентные задания.
Частая причина — ошибка в одном из документов. Найдите его по времени в журнале и исправьте вручную.-->
5. Перепроверка с учетом зависимостей документов
Один из самых распространенных ошибок при массовой перепроверке — игнорирование связей между документами. Например, если сначала перепровести Счет-фактуру выданный, а потом Реализацию товаров, к которой он привязан, могут возникнуть расхождения в регистрах НДС.
🔗 Правильный порядок перепроверки (для торговой конфигурации):
Поступление товаров и услуг(влияет на остатки).Счета-фактуры полученные(зависит от поступлений).Реализация товаров и услуг(использует остатки).Счета-фактуры выданные(привязаны к реализациям).Кассовые документы(если они ссылаются на реализации).
📌 Как проверить зависимости:
- 🔍 Откройте документ и посмотрите поле
ОснованиеилиСвязанные документы. - 📊 Используйте отчет
Анализ связей объектов(Отчеты → Стандартные → Анализ связей). - 💻 В консоли запросов выполните:
ВЫБРАТЬСсылка.ВидыСвязей() КАК Связи
ИЗ
Документ.РеализацияТоваровУслуг КАК Ссылка
ГДЕ
Ссылка.Ссылка = &СсылкаНаДокумент
- Исправить
Поступление(или сделать корректировку остатков). - Перепровести
Поступление. - Только потом перепровести
Реализацию.
💡 Пример проблемы: Если в Реализации указан товар, которого нет на складе (из-за ошибки в Поступлении), документ не перепроведется. В этом случае нужно:
Всегда начинайте перепроверку с документов, которые формируют остатки (поступления, оприходования), и заканчивайте документами, которые их списывают (реализации, расходы).
6. Автоматизация перепроверки через внешние обработки
Для регулярной перепроверки (например, ежемесячно перед закрытием) удобно использовать внешние обработки. Они позволяют сохранять настройки фильтров и запускать процесс в один клик.
📥 Где взять обработки:
- 🔹 Инфостарт — крупнейшая база обработок для 1С (есть бесплатные и платные варианты).
- 🔹 Портал ИТС — официальные обработки от 1С (требуется подписка).
- 🔹 GitHub — открытые решения от сообщества (например,
1C-Script-Library).
🛠️ Пример настройки обработки:
- Скачайте обработку (например,
"Универсальная перепроверка документов.epf"). - Откройте ее через
Файл → Открытьв 1С. - Укажите параметры:
- 📅 Период (можно выбрать
Текущий месяц,Квартал,Произвольный). - 📄 Типы документов (отметьте галочками нужные).
- ⚙️ Дополнительные фильтры (например, только документы с ошибками).
- 📅 Период (можно выбрать
- Нажмите
Выполнитьи дождитесь завершения. - Проверьте репутацию автора на Инфостарте.
- Откройте код обработки (
Конфигуратор → Открыть текст) и поищите подозрительные функции (например,ВыполнитьКомандус внешними ссылками). - Запустите обработку на тестовой базе.
- 🔹 Закройте 1С у всех пользователей и повторите попытку.
- 🔹 Используйте фоновое задание (оно обходит блокировки).
- 🔹 Проверьте журнал блокировок:
Администрирование → Активные пользователи → Блокировки. - 🔹 Зайдите под пользователем с правами
Администратор. - 🔹 Настройте роль в
Администрирование → Пользователи → Настройка прав. - 🔹 Откройте документ в Конфигураторе (
Конфигурация → Документы → [Тип документа] → Модуль объекта). - 🔹 Проверьте строки, указанные в сообщении об ошибке.
- 🔹 Если не можете исправить самостоятельно, обратитесь к программисту 1С.
- 🔹 Последовательность проведения — возможно, документы перепровелись в неправильном порядке.
- 🔹 Настройки учета — в
Предприятие → Настройки учетамогли сбиться флаги (например,Вести учет по складам). - 🔹 Движения документов — откройте проблемный документ и нажмите
Действия → Показать движения.
⚠️ Предупреждение: Некоторые обработки могут содержать вредоносный код. Перед использованием:
Как создать свою обработку для перепроверки?
1. Откройте Конфигуратор (1С:Предприятие → Конфигуратор).
2. Создайте новую обработку (Файл → Новый → Обработка).
3. В модуле объекта вставьте код из раздела 3 (с консолью запросов).
4. Добавьте элементы управления для выбора периода и типов документов.
5. Сохраните как .epf и используйте в любой базе.
7. Типичные ошибки и их решения
Даже при правильной настройке перепроверка может завершиться ошибками. Разберем самые частые проблемы и способы их исправления.
🚨 "Документ не проведен: ошибка блокировки"
Причина: Другой пользователь редактирует этот документ или связанные с ним данные.
Решение:
🚨 "Недостаточно прав для проведения"
Причина: У текущего пользователя нет роли Проведение документов.
Решение:
🚨 "Ошибка в модуле документа"
Причина: В коде документа есть синтаксическая ошибка или неверная логика.
Решение:
📊 Таблица: Коды ошибок и их значение
| Код ошибки | Описание | Решение |
|---|---|---|
{ОбщийМодуль.МодульОбъекта(123)} |
Ошибка в общем модуле | Проверьте модуль в конфигураторе, строка 123 |
Ошибка блокировки данных |
Документ заблокирован другим пользователем | Закройте сессии или используйте фоновое задание |
Недостаточно прав |
У пользователя нет прав на проведение | Настройте роль в Администрирование → Пользователи |
Отрицательное количество |
В документе указано списание больше, чем есть на складе | Исправьте количество или сделайте корректировку остатков |
⚠️ Внимание: Если после перепроверки в отчетах появились расхождения (например, в Оборотно-сальдовой ведомости), проверьте:
8. Альтернативные методы для сложных случаев
Если стандартные способы не работают (например, база повреждена или документов миллионы), используйте альтернативные подходы.
🔧 Метод 1: Перепроверка через SQL-запрос (для опытных)
Для 1С на MS SQL Server или PostgreSQL можно написать запрос, который обновит статус проведения. Опасный метод — используйте только если понимаете последствия!
Пример запроса (для MS SQL):
UPDATE [dbo].[_Document123] -- замените на реальную таблицу документа
SET [Posted] = 0
WHERE [Date] BETWEEN '2026-01-01' AND '2026-01-31'
-- Затем проведите документы стандартным способом
🔧 Метод 2: Выгрузка/загрузка через DT/XML
Если документы повреждены, их можно:
- Выгрузить в
DTилиXMLчерезАдминистрирование → Выгрузка данных. - Удалить проблемные документы из базы.
- Загрузить их обратно — они проведутся автоматически.
🔧 Метод 3: Использование 1С:EDT (для программистов)
В 1С:Enterprise Development Tools
&НаСервере
Процедура ПерепровестиДокументыРасширение()
Документы = Документы.РеализацияТоваровУслуг.НайтиПоРеквизиту(
"Дата", НачалоДня(ТекущаяДата()) + 30);
Для Каждого Док Из Документы Цикл
Док.Провести();
КонецЦикла;
КонецПроцедуры
⚠️ Внимание: Методы с прямым доступом к базе (SQL, Это снизит нагрузку на сервер и уменьшит риск ошибок.--> Да, но это может привести к расхождениям в отчетности. Если период закрыт (например, в 1С:Бухгалтерии стоит флаг Зависит от конфигурации и мощности сервера:
Для ускорения используйте фоновые задания и разбейте период на части.
Это означает, что документы провелись с ошибками. Проверьте:
Если движения критичны, восстановите базу из бэкапа и повторите перепроверку с исправленными настройками.
Используйте обработку Ссылка КАК Документ ИЗ Документ.РеализацияТоваровУслуг КАК Реализация ГДЕ Реализация.Проведен = ИСТИНА И НЕ Реализация.ДвиженияПроводок.Пустая() = ЛОЖЬDT) могут нарушить целостность данных. Всегда делайте резервную копию перед их использованием и тестируйте на копии базы.
FAQ: Частые вопросы по перепроверке документов в 1С
❓ Можно ли перепровести документы за закрытый период?
Закрыт для редактирования), сначала снимите блокировку в Предприятие → Закрытие периода. После перепроверки рекомендуется пересчитать итоги (Операции → Закрытие месяца → Пересчитать итоги).
❓ Сколько времени занимает перепроверка 50 000 документов?
❓ Что делать, если после перепроверки пропали движения по регистрам?
Администрирование → Журнал регистрации) на наличие ошибок.Предприятие → Настройки учета) — возможно, отключен нужный регистр.Предупреждение или Отказ в процедуре ОбработкаПроведения.❓ Как перепровести только документы с ошибками?
"Поиск и исправление ошибок проведения" (есть на Инфостарте). Или напишите запрос:
ВЫБРАТЬ
Этот запрос найдет документы, которые помечены как проведенные, но не имеют движений (типичный признак ошибки).
Да, но способ зависит от метода:
⚠️ Если перепроверка прервалась на середине, некоторые документы могут остаться в состоянии "проводится". В этом случае перезапустите 1С и проведите их вручную.
❓ Можно ли отменить перепроверку, если она уже запущена?
Отмена в прогрессе выполнения.Администрирование → Фоновые задания и остановите задачу.