Массовое выделение документов в списке 1С:Предприятия 8.3

· 9 мин

Содержание

Чтобы выделить все документы в 1С, щёлкните по любой строке списка и нажмите Ctrl+A. Та же команда есть в меню списка: Еще → Выделить все. Выделятся все строки, которые проходят текущий отбор, а не только видимые на экране.

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

Горячие клавиши для выделения документов в списке

Главное правило: фокус должен стоять на таблице. Если курсор мигает в поле поиска, Ctrl+A выделит текст в этом поле, а не документы. Сначала один раз щёлкните по любой строке списка.

Что нужноКак сделать
Выделить все документы спискаCtrl+A или Еще → Выделить все
Выделить диапазон подрядщелчок по первой строке, затем Shift + щелчок по последней
Добавить или убрать одну строкуCtrl + щелчок по строке
Расширить выделение на строку вверх/внизShift+↑ / Shift+↓
Расширить выделение на экранShift+PageUp / Shift+PageDown
Снять выделениеобычный щелчок по любой строке без клавиш

Несколько приёмов, которые экономят время:

  • 🖱️ Выделить всё, кроме пары документов. Нажмите Ctrl+A, затем Ctrl + щелчок по тем строкам, которые нужно исключить. Это быстрее, чем набирать 200 строк по одной.
  • 📅 Диапазон за период. Отсортируйте список по дате (щелчок по заголовку колонки «Дата»), щёлкните первый документ периода и с Shift — последний.
  • 🔁 Два диапазона сразу. Выделите первый диапазон через Shift, а строки второго добавляйте через Ctrl по одной. Если второй диапазон большой, проще поменять сортировку или отбор так, чтобы оба куска шли подряд.

Выделение сбрасывается от любого щелчка без Ctrl или Shift. Если выделили 150 документов и случайно кликнули мимо — начинайте заново. Поэтому сначала настройте отбор, потом выделяйте.

Отбор документов перед тем, как выделить все

Ctrl+A берёт всё, что есть в списке с учётом отбора. Если в списке документы за три года и пяти организаций, выделятся все. Чтобы массовая операция задела только нужное, сначала сузьте список.

Период

В большинстве журналов типовых конфигураций есть команда установки периода в командной панели списка (кнопка с календарём или пункт в меню Еще). Задайте, например, 01.09 – 30.09. После этого в списке останутся документы только за сентябрь.

Быстрые отборы в шапке списка

В Бухгалтерии 3.0 и многих других конфигурациях над таблицей стоят поля быстрого отбора: «Организация», «Контрагент», «Склад» и т.п. — набор зависит от вида документа. Заполните нужное поле, и список сразу перестроится.

Поиск

  • 🔎 Поле поиска в правом верхнем углу списка (Ctrl+F) ищет по строке во всех видимых колонках. Удобно отобрать документы по номеру или фрагменту комментария.
  • 🔍 Расширенный поиск (Alt+F) ищет по конкретной колонке с условием «содержит», «равно», «начинается с».
  • 📌 Чтобы сбросить поиск, нажмите крестик в поле поиска. Пока поиск активен, Ctrl+A выделит только найденные строки.

Отбор через настройку списка

Для сложных условий откройте настройку списка из меню Еще и перейдите на вкладку «Отбор». Там можно задать сразу несколько условий: проведён / не проведён, помечен на удаление, сумма больше 100 000 и т.д.

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

Проверка перед выделением простая: посмотрите на последнюю и первую строку списка (клавиши Ctrl+End и Ctrl+Home). Если даты и организация совпадают с ожидаемыми — можно нажимать Ctrl+A.

Что можно сделать сразу со всеми выделенными документами

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

ОперацияКак запуститьЧто учесть
Провестикнопка «Провести» или Еще → Провестиидёт по одному документу; на сотнях документов займёт минуты
Отменить проведениеЕще → Отмена проведениядвижения документов удаляются, итоги регистров меняются
Пометить на удаление / снять пометкуклавиша Delete или Еще → Пометить на удаление / Снять пометкусами документы пока остаются в базе
Печатькнопка «Печать» → нужная формавсе печатные формы откроются одним табличным документом, каждая с новой страницы
Групповое изменение реквизитовЕще → Изменить выделенныеесть в конфигурациях на БСП: БП 3.0, ЗУП 3.1, УТ 11 и др.
Выгрузка в таблицуЕще → Вывести списокполучаете табличный документ, его можно сохранить в Excel

Групповое изменение реквизитов

Команда «Изменить выделенные» открывает форму, где вы выбираете реквизит и новое значение. Например, проставить комментарий «Сверено с банком» сразу в 80 платёжках или поменять ответственного в пачке реализаций.

Тот же инструмент доступен и без выделения: Администрирование → Обслуживание → Корректировка данных → Групповое изменение реквизитов. Там документы отбираются условиями прямо в обработке.

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

Пометка на удаление и окончательное удаление

Delete по выделенной группе только ставит пометку. Физически документы удаляются отдельной обработкой: Администрирование → Обслуживание → Корректировка данных → Удаление помеченных объектов. Она проверяет ссылки: если на документ ссылается другой объект, удалить его не получится, пока не разберётесь со ссылкой.

Перед массовой операцией над выделенными документами
Выполнено: 0 / 5

Как выделение работает в разных интерфейсах и клиентах

В 1С:Предприятии 8.3 с интерфейсом «Такси» выделение устроено одинаково в тонком клиенте, толстом клиенте с управляемыми формами и веб-клиенте. Различия — в мелочах.

Где работаетеОсобенность выделения
Тонкий клиент, «Такси»все клавиши из таблицы выше работают штатно
Веб-клиент в браузереклавиши те же, но часть сочетаний может перехватить браузер; надёжнее пользоваться Еще → Выделить все
Журналы, где собраны документы разных видоввыделять можно разные виды вперемешку, но печать и групповое изменение доступны только для общего у них
Формы подбора и выборанесколько строк выбрать можно только там, где форма поддерживает множественный выбор
Старые конфигурации на обычных формахShift и Ctrl работают так же, а набор массовых команд беднее

Отдельно про большие списки. Динамический список подгружает данные порциями по мере прокрутки. Ctrl+A всё равно выделяет весь список, но операция над десятками тысяч строк идёт долго и сильно грузит сервер. Если отбор оставил 30 000 документов, лучше разбить работу по месяцам.

Почему не выделяются все документы или операция обрывается

Сбои при выделении и массовых операциях укладываются в несколько типовых сценариев. Нажмите на симптом, чтобы увидеть причину.

Диагностика: выберите симптом

Если массовое проведение повисло, не снимайте процесс 1С через диспетчер задач посреди работы. Документы, которые уже провелись, останутся проведёнными, а прерванная транзакция откатится, но вы потеряете понимание, на каком документе всё остановилось. Лучше дождаться окончания и проверить список отбором «Не проведён».

Когда выделения в списке мало: обработки и код

Выделение в списке хорошо для десятков и сотен документов. Когда нужна сложная выборка (например, все реализации за квартал, где не заполнен договор) или регулярная операция, удобнее инструменты другого уровня.

Встроенные и внешние обработки

  • 🧰 Групповое изменение реквизитов — уже упомянутая встроенная обработка в конфигурациях на БСП. Она сама строит отбор по условиям, выделять ничего не нужно.
  • 📦 Универсальный подбор и обработка объектов — внешняя обработка, которую поставляют для администраторов. Позволяет отобрать документы любым условием и применить к ним действие: провести, отменить проведение, пометить на удаление, изменить реквизит.
  • 📄 Отчёт как источник отбора. Отчёты на СКД часто позволяют открыть расшифровку и из неё перейти к списку документов. Это помогает найти документы, которые сложно отобрать в журнале.

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

Пример кода: обработать выделенные строки

Если вы пишете свою команду для формы списка, выделенные документы лежат в свойстве ВыделенныеСтроки таблицы формы. Пример для клиентской команды, которая передаёт ссылки на сервер:

&НаКлиенте
Процедура ОбработатьВыделенные(Команда)
	Выделенные = Элементы.Список.ВыделенныеСтроки;
	Если Выделенные.Количество() = 0 Тогда
		Сообщить("Не выделено ни одного документа");
		Возврат;
	КонецЕсли;
	МассивСсылок = Новый Массив;
	Для Каждого Строка Из Выделенные Цикл
		Если ТипЗнч(Строка) <> Тип("СтрокаГруппировкиДинамическогоСписка") Тогда
			МассивСсылок.Добавить(Строка);
		КонецЕсли;
	КонецЦикла;
	ПровестиНаСервере(МассивСсылок);
	Элементы.Список.Обновить();
КонецПроцедуры

&НаСервереБезКонтекста
Процедура ПровестиНаСервере(МассивСсылок)
	Для Каждого Ссылка Из МассивСсылок Цикл
		ДокументОбъект = Ссылка.ПолучитьОбъект();
		Попытка
			ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
		Исключение
			Сообщить("Не проведён: " + Строка(Ссылка) + ". " + ОписаниеОшибки());
		КонецПопытки;
	КонецЦикла;
КонецПроцедуры

Проверка на СтрокаГруппировкиДинамическогоСписка нужна, если пользователь включил группировку списка: тогда среди выделенных попадаются строки групп, а не документы.

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

Когда условие сложное, выделение не нужно вовсе — документы берут запросом:

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

Код выполняется на сервере: в модуле внешней обработки или в серверной процедуре формы. Имя документа РеализацияТоваровУслуг подставьте своё — посмотреть его можно в конфигураторе или в списке метаданных.

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

Можно ли выделить документы сразу в нескольких списках?
Нет. Выделение живёт внутри одной таблицы формы. Чтобы обработать документы разных видов, используйте общий журнал документов или обработку с отбором условиями.
Сколько документов можно выделить за раз?
Жёсткого ограничения в интерфейсе нет. На практике после нескольких тысяч строк массовые команды работают медленно, поэтому большие объёмы удобнее делить по периодам.
Сохраняется ли выделение после закрытия списка?
Нет. При повторном открытии формы выделение сбрасывается, а вот отборы и настройки списка сохраняются.
Можно ли скопировать сразу несколько документов?
Команда копирования (F9) создаёт копию только текущего документа. Для пакетного копирования нужна обработка или код.
Как узнать, сколько документов выделено?
Штатного счётчика выделенных строк в списке нет. Самый простой способ — Еще → Вывести список, включить в настройках вывода только выделенные строки и посмотреть число строк в полученной таблице.