Выделение и групповая обработка документов в 1С 8.3
Содержание
Чтобы отметить несколько документов в списке, щёлкните по первой строке, зажмите Ctrl и кликайте по остальным — или выделите диапазон через Shift. Все строки сразу — Ctrl+A. Дальше с выделенными работают групповые команды из меню Ещё: провести, пометить на удаление, изменить реквизиты.
Это поведение платформы, а не отдельной конфигурации. Пути и клавиши одинаковы в 1С:Бухгалтерии 3.0, ЗУП 3.1, Управлении торговлей 11 и других прикладных решениях на 1С 8.3 с интерфейсом «Такси». Способ выбирают под задачу: разово отметить пару документов проще мышью, а менять реквизит у сотни — обработкой или скриптом.
Сначала определитесь, сколько документов и как часто нужно обрабатывать — от этого зависит способ.
Ctrl или Shift прямо в журнале и вызовите групповую команду из меню Ещё.Ctrl+A, затем групповая команда или обработка «Групповое изменение реквизитов».Выделяем несколько документов в журнале мышью
Любой список документов в 1С поддерживает множественное выделение. Способ зависит от того, идут нужные строки подряд или вразброс.
- 🖱️ Диапазон строк. Щёлкните первую строку, затем с зажатым
Shift— последнюю. Выделится всё между ними. - 🖱️ Строки вразброс. Щёлкните первую, затем с зажатым
Ctrlдобавляйте по одной. ПовторныйCtrl+кликпо строке снимает с неё выделение. - 🖱️ Комбинация. Выделите диапазон через
Shift, потомCtrl+клик— добавьте или уберите отдельные строки.
Выделенные строки подсвечиваются цветом. Счётчик выделенного обычно виден внизу формы списка.
Чтобы отобрать только нужные документы перед выделением, настройте список: кнопка Ещё → Настроить список (или Настроить отбор), условия по периоду, контрагенту, организации, виду операции. Тогда в списке останется только то, что вы собираетесь обработать, — меньше шансов зацепить лишнее.
Полезно сначала отсортировать список по нужной колонке (клик по заголовку столбца), чтобы нужные строки встали подряд, — тогда их проще захватить диапазоном через Shift. Сортировка по дате, контрагенту или сумме часто собирает однотипные документы вместе.
Так же выделяют строки и в журнале, где лежат документы разных видов сразу, и в табличной части открытого документа: Ctrl и Shift работают одинаково. В табличной части после выделения строк доступны команды Ещё → копировать, удалить, переместить выделенное.
Если документов за период много, удобнее сузить список отбором, а потом нажать Ctrl+A, чем вручную ловить строки мышью.
Что можно сделать с выделенными документами
После выделения вызовите групповые команды. Два пути: правый клик по выделенному или кнопка Ещё в командной панели списка.
Типовой набор команд для документов:
- ✅ Провести — проводит все выделенные непроведённые документы.
- ↩️ Отменить проведение — снимает проведение, движения по регистрам удаляются.
- 🗑️ Пометить на удаление / Снять пометку — ставит или снимает пометку у выделенных.
- ✏️ Изменить выделенные (в части конфигураций — вызов обработки группового изменения) — массово меняет реквизит.
Команды применяются сразу ко всему выделенному набору. Платформа обрабатывает документы по очереди; если один не проходит (ошибка контроля, блокировка), остальные всё равно обработаются, а по проблемному выйдет сообщение.
На больших объёмах групповая команда идёт не мгновенно: платформа записывает каждый документ, пересчитывает движения по регистрам и проверяет контроль остатков. Пара тысяч документов могут обрабатываться несколько минут. Не закрывайте форму и не снимайте задачу принудительно до завершения — прерванная массовая операция оставит часть документов обработанной, а часть нет.
Отдельно стоит разобраться с пометкой на удаление, потому что её часто путают с удалением. Команда Пометить на удаление только ставит признак — перечёркнутый значок у строки. Документ при этом остаётся в базе, продолжает давать движения и попадать в отчёты. Чтобы убрать помеченные документы физически, запускают обработку Администрирование → группа Обслуживание → «Удаление помеченных объектов». Она работает в монопольном режиме и перед удалением проверяет, не ссылаются ли на документ другие объекты: если ссылки есть, документ не удалится, а в отчёте обработки будет указано, что именно на него ссылается.
Массовое проведение задним числом сдвигает последовательность расчётов. Если перепроводите документы закрытого или проверенного периода, сверьте итоги после операции — суммы в отчётах могут измениться.
Горячие клавиши для ускорения работы со списком
Клавиатура экономит время, когда документов много. Основные сочетания в списках 1С 8.3:
| Клавиши | Действие |
|---|---|
Ctrl + клик | Добавить/убрать строку из выделения |
Shift + клик | Выделить диапазон строк |
Shift + стрелки ↑↓ | Расширить выделение с клавиатуры |
Ctrl+A | Выделить все строки списка |
Delete | Пометить выделенное на удаление (с подтверждением) |
Ins | Создать новый документ |
F5 | Обновить список |
Клавиша Delete в списке по умолчанию не удаляет документ физически, а помечает его на удаление — программа переспросит подтверждение. Это безопаснее, чем кажется: пометку всегда можно снять.
Для навигации по длинному списку пригодятся Home и End — переход к первой и последней строке, а колесо мыши с зажатым Ctrl меняет масштаб формы. Сочетания запоминаются быстро, и уже через пару дней выделение набора документов занимает секунды вместо минут возни мышью.
F5 обновляет список, но сбрасывает текущее выделение — обновляйте до того, как отметили строки, а не после.
Массовое изменение реквизитов обработкой
Когда у десятков документов нужно поменять один и тот же реквизит — например, подставить другой склад, вид операции, ответственного или статью затрат, — ручное выделение не поможет: значение меняют не командой списка, а обработкой «Групповое изменение реквизитов».
Как её открыть:
- Включите команду
Все функции:Главное меню → Сервис → Параметры(илиНастройки), поставьте галку «Отображать команду “Все функции”». - Откройте
Все функции→Стандартные→Групповое изменение реквизитов. - В поле «Изменять» выберите вид объекта — нужный документ или справочник.
- Задайте отбор: период, организация, контрагент — чтобы под изменение попали только нужные элементы.
- Внизу выберите реквизит и новое значение, нажмите
Изменить реквизиты.
В 1С:Бухгалтерии 3.0 та же обработка доступна и через раздел Администрирование → группа Обслуживание (название пункта в части релизов может отличаться).
Пример: нужно у 120 реализаций за квартал сменить склад отгрузки с одного на другой. Через журнал пришлось бы открывать каждый документ. В обработке вы указываете вид документа «Реализация», ставите отбор по периоду и старому складу, выбираете реквизит «Склад» и новое значение — изменение проходит одним нажатием для всех 120 документов. Перед запуском обработка показывает, сколько элементов попало под условие, — проверьте число, прежде чем менять.
Если менять реквизит, который влияет на движения (счёт учёта, ставку НДС, аналитику), обработка запишет документы, но не перепроведёт их автоматически. После изменения выделите документы в журнале и проведите заново, иначе проводки останутся старыми.
Программный способ: своя обработка на встроенном языке
Если задача повторяется или условие отбора сложнее, чем позволяет интерфейс, помогает небольшой скрипт. Обрабатывать документы можно во внешней обработке, где процедура выполняется на сервере.
Пометить выделенные в списке документы на удаление:
&НаСервере
Процедура ПометитьНаУдаление(МассивСсылок)
Для Каждого Ссылка Из МассивСсылок Цикл
Объект = Ссылка.ПолучитьОбъект();
Объект.УстановитьПометкуУдаления(Истина);
КонецЦикла;
КонецПроцедуры
Метод УстановитьПометкуУдаления(Истина) сам записывает объект, поэтому отдельный Записать() не нужен. Чтобы снять пометку, передайте Ложь.
Массово провести документы:
&НаСервере
Процедура ПровестиГруппу(МассивСсылок)
Для Каждого Ссылка Из МассивСсылок Цикл
Объект = Ссылка.ПолучитьОбъект();
Объект.Записать(РежимЗаписиДокумента.Проведение);
КонецЦикла;
КонецПроцедуры
В обработке массив ссылок на выделенные строки берут из свойства списка — например, Элементы.Список.ВыделенныеСтроки. Для динамического списка это идентификаторы строк основной таблицы, то есть ссылки на документы.
При большом количестве документов оберните запись в попытку (Попытка … Исключение … КонецПопытки), чтобы один проблемный документ не прерывал весь цикл, а программа продолжила с остальными.
Чтобы передать выделение в серверную процедуру, в клиентском обработчике соберите ссылки в массив и вызовите процедуру с этим массивом как параметром — напрямую обращаться к Элементы.Список.ВыделенныеСтроки из &НаСервере нельзя, элементы формы доступны только на клиенте.
Запускать такой код в рабочей базе лучше вне часа пик: массовая запись документов создаёт нагрузку и временные блокировки регистров. Если нужна разовая правка и писать форму не хочется, тот же цикл выполняют во внешней обработке с минимальной формой и одной кнопкой — это надёжнее, чем вставлять код в случайные места конфигурации.
Внешние обработки для массовых операций
Готовые внешние обработки (файлы .epf) закрывают частые сценарии без программирования: массовое перепроведение за период, групповая смена контрагента, проверка проведённости. Их пишут партнёры 1С и сообщество.
Открыть обработку можно двумя путями:
- Разово.
Файл → Открыть, выберите файл.epf. Обработка запустится, но в базе не сохранится. - Постоянно. Подключите через
Администрирование→Печатные формы, отчёты и обработки→ «Дополнительные отчёты и обработки». Тогда обработка будет доступна из нужного раздела без поиска файла.
Внешняя обработка выполняет произвольный код и имеет доступ к данным базы. Запускайте только обработки из доверенного источника — от вашего партнёра 1С или проверенного разработчика. Чужой файл из интернета может изменить данные не так, как вы ожидаете.
Ещё один нюанс — совместимость. Обработку часто пишут под конкретную конфигурацию и релиз: массовая смена контрагента в Бухгалтерии и в Управлении торговлей обращается к разным объектам. Прежде чем покупать или скачивать, уточните, под вашу ли конфигурацию и версию платформы она рассчитана.
Прежде чем применять незнакомую обработку к рабочей базе, проверьте её на копии: сделайте выгрузку .dt, разверните тестовую базу и прогоните операцию там. Так вы увидите результат на реальных данных, ничем не рискуя.
Типичные ошибки при массовой обработке
Самое частое — путаница между пометкой и удалением. Пометка на удаление документ не стирает: он остаётся в базе, продолжает участвовать в отчётах, пока его не уберёт обработка «Удаление помеченных объектов», которую запускают в монопольном режиме.
Другие ситуации, которые тормозят массовую обработку:
- 🔒 Документ занят другим пользователем. Платформа пропустит его и выдаст сообщение. Повторите команду, когда коллега закроет документ.
- 🚫 Нет прав на действие. У пользователя без соответствующей роли групповых команд в меню может не быть вовсе. Права настраивает администратор.
- 🔁 Реквизит изменили, а проводки прежние. Групповое изменение реквизита не перепроводит документ — проведите выделенное заново.
- 🧹 Выделение слетело после
F5. Обновление списка сбрасывает отметку строк. Выделяйте заново после обновления. - 📅 Операция затронула закрытый период. Массовое перепроведение задним числом меняет остатки и итоги — после операции сверьте ключевые отчёты.
Частые вопросы
Чем пометка на удаление отличается от удаления?
Как выделить все документы за определённый период?
Ещё → Настроить список), оставьте только нужный период, затем нажмите Ctrl+A. Выделятся все строки, попавшие под отбор.Можно ли отменить массовую пометку на удаление?
Ещё команду «Снять пометку удаления». Пока обработка удаления не запущена, данные не теряются.Сохранится ли выделение после обновления списка?
F5 и автоматическое обновление сбрасывают выделение строк. Сначала обновите список, затем отмечайте документы.