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