Выделение всех документов в списке 1С 8.3 и что с ними делать дальше
Содержание
Чтобы выделить весь список документов в 1С 8.3, щёлкните по любой строке списка и нажмите Ctrl+A. Выделятся все документы, которые попадают под текущий отбор и период, даже те, что не видны на экране. Если нужен не весь список, а диапазон, щёлкните первую строку, зажмите Shift и щёлкните последнюю.
Это поведение платформы, а не конкретной конфигурации. Приёмы одинаково работают в Бухгалтерии 3.0, ЗУП 3.1, Управлении торговлей 11 и других типовых решениях на интерфейсе «Такси». Различаются только команды, которые потом можно применить к выделенным документам.
Горячие клавиши для выделения документов в списке
Главное условие: фокус должен стоять в самой таблице. Если курсор мигает в поле поиска или в поле отбора, Ctrl+A выделит текст в этом поле, а не строки списка. Поэтому сначала щёлкните по любому документу.
| Сочетание | Что делает |
|---|---|
Ctrl+A | выделяет все строки списка с учётом отбора |
Shift + щелчок | выделяет диапазон от текущей строки до той, по которой щёлкнули |
Ctrl + щелчок | добавляет строку к выделению или убирает её |
Shift+↑ / Shift+↓ | расширяет выделение на одну строку вверх или вниз |
Shift+PageUp / Shift+PageDown | расширяет выделение на экран |
Ctrl+Home / Ctrl+End | переход к первой или последней строке списка |
Как выделить всё, кроме нескольких документов
Самый быстрый способ — комбинация двух приёмов:
- Нажмите
Ctrl+A, чтобы выделить весь список. - Зажмите
Ctrlи щёлкните по документам, которые нужно исключить. С них выделение снимется. - Отпустите
Ctrlи, не щёлкая больше по строкам, вызывайте нужную команду.
Один щелчок по строке без Ctrl или Shift сбрасывает всё выделение и оставляет выделенной только эту строку. Если вы долго собирали выборку вручную, не кликайте по списку «просто так».
Как выделить документы за часть периода
Удобно сочетать сортировку и Shift. Отсортируйте список по колонке «Дата» щелчком по заголовку, щёлкните первый документ нужного дня, пролистайте до последнего и щёлкните по нему с зажатым Shift. Выделится непрерывный диапазон.
Команда «Выделить все» в меню списка
Если горячие клавиши неудобны или не срабатывают, ту же операцию можно выполнить мышью.
- Щёлкните правой кнопкой мыши по любой строке списка документов.
- В контекстном меню выберите
Выделить все.
Второй путь — через командную панель над списком: кнопка Еще раскрывает полный набор команд формы, и Выделить все есть среди них. Рядом с командой в меню обычно подписано её сочетание клавиш. Так удобно запоминать горячие клавиши и для других действий.
💡 Если в меню Еще команды нет или она неактивна, скорее всего, список работает в режиме одиночного выделения. Такое бывает в формах выбора: когда вы открыли список из поля документа, чтобы подставить в него одно значение. Откройте этот же журнал из раздела меню, а не из поля, и множественное выделение заработает.
Отборы, поиск и период: что именно попадёт в выделение
Ctrl+A выделяет не все документы в базе, а все строки, которые список показывает сейчас. На состав выборки влияют три вещи.
- 📅 Период. В Бухгалтерии 3.0 многие журналы показывают документы за выбранный интервал. Его задают через
Еще → Установить период. Документы за пределами периода не выделятся. - 🔍 Поиск. Если в поле поиска над списком что-то введено, список отфильтрован по этой строке. Нажмите крестик в поле поиска или
Еще → Отменить поиск, если нужен полный список. - 🎯 Отборы. Отборы по организации, контрагенту, складу или ответственному стоят в шапке формы списка или в её настройках. Активный отбор легко пропустить: он может быть задан давно и сохранён в настройках формы.
Поэтому порядок действий такой: сначала настроить выборку, потом выделять. Пример: нужно провести все поступления от одного поставщика за сентябрь.
- Откройте журнал поступлений.
- Задайте период с 1 по 30 сентября.
- Установите отбор по контрагенту.
- Щёлкните в список и нажмите
Ctrl+A. - Проверьте количество строк и только потом запускайте команду.
Перед массовой операцией убедитесь, что в выборку не попали лишние документы. Отбор по организации, оставшийся с прошлого раза, — частая причина проведения или пометки «не тех» документов.
Как посчитать, сколько документов выделено
Форма списка не показывает счётчик выделенных строк. Простой способ проверить объём — Еще → Вывести список: платформа сформирует табличный документ по строкам списка, и по нему видно их число. Второй способ — скопировать выделенные строки (Ctrl+C) и вставить их в Excel: количество строк сразу видно в таблице.
Что можно сделать с выделенными документами
Выделение само по себе ничего не меняет. Ценность в том, какую команду вы затем примените сразу ко всем строкам. Набор команд зависит от конфигурации, но в типовых решениях на «Такси» доступны следующие.
| Операция | Где найти | Что учесть |
|---|---|---|
| Провести | Еще → Провести | документы проводятся по очереди; о тех, что не провелись, программа выводит сообщения |
| Отменить проведение | Еще → Отмена проведения | движения по регистрам снимутся у всех выделенных |
| Пометить на удаление | клавиша Delete или Еще → Пометить на удаление / Снять пометку | документы не удаляются сразу, их потом удаляет обработка удаления помеченных |
| Печать | кнопка Печать над списком | печатная форма сформируется для каждого выделенного документа в одном окне |
| Изменить реквизит | Еще → Изменить выделенные | меняет одно и то же поле у всех документов сразу |
| Копировать в буфер | Ctrl+C | строки вставляются в Excel или текстовый редактор как таблица |
Групповое изменение реквизитов
Команда Изменить выделенные открывает форму, в которой отмечают нужный реквизит и задают новое значение. Например, у 200 реализаций можно одним действием заменить ответственного или подразделение. Число выделенных документов видно в самой форме изменения, сверьте его со своей выборкой.
Изменение реквизитов проведённых документов перезаписывает их. Если вы меняете поле, которое влияет на проводки, документ нужно перепровести. Сначала опробуйте операцию на 2-3 документах, затем запускайте на всю выборку.
Пометка на удаление и само удаление
Пометка ставится на все выделенные документы за одно нажатие Delete, программа лишь попросит подтверждение. Проведённый документ при пометке на удаление теряет проведение, его движения снимаются. Окончательно помеченные объекты удаляют отдельно: в Бухгалтерии 3.0 это Администрирование → Обслуживание → Корректировка данных → Удаление помеченных объектов. Обработка проверит ссылки и не удалит документы, на которые ссылаются другие объекты.
Когда в списке тысячи документов
Список документов в 1С динамический: на экран загружается только видимая часть строк, остальные подгружаются при прокрутке. Ctrl+A формально выделяет всё. Но как только вы запускаете команду, платформа обрабатывает каждый документ по отдельности, и на больших объёмах это заметно.
Что происходит при массовой операции на тысячах строк:
- ⏳ Проведение идёт в один поток. Каждый документ записывается и формирует движения. На медленной базе месяц реализаций может проводиться десятки минут, и всё это время окно занято.
- 🔒 Возникают блокировки. В клиент-серверной базе массовое проведение блокирует данные регистров. Коллеги, которые в это время проводят свои документы, получат ожидание или ошибку блокировки.
- 🧾 Растёт поток сообщений. Если часть документов не проводится, внизу окна копятся сообщения, и найти среди сотен строк нужную трудно.
- 🖥 Нагружается клиент. Печать или «Вывести список » по нескольким тысячам строк формирует огромный табличный документ и может надолго «подвесить» окно.
Как работать с большими выборками без проблем:
- Делите выборку по периодам: неделя или месяц вместо целого года.
- Тяжёлые операции запускайте, когда в базе мало пользователей: вечером или до начала рабочего дня.
- Для проведения за большой период используйте не список, а групповое перепроведение. В Бухгалтерии 3.0 оно находится в разделе
Администрирование → Проведение документов. - Перед массовым удалением или изменением сделайте резервную копию: откатить сотни правок вручную почти невозможно.
💡 Хронология важна. Команда «Провести» в списке обрабатывает документы в порядке выделения и сортировки списка. Если список отсортирован не по дате, остатки и себестоимость могут посчитаться иначе, чем при проведении по порядку. Для партионного учёта и списания по среднему это критично.
Обработки и запросы вместо ручного выделения
Если выборка сложная (например, «все реализации, где сумма больше 100 000 и не заполнен договор»), собирать её мышью в списке неудобно. Для таких задач есть инструменты, которые отбирают документы по условиям и применяют действие сразу ко всем.
Групповое изменение реквизитов по условию
В Бухгалтерии 3.0 обработку можно открыть не только из списка, но и из раздела Администрирование → Обслуживание → Корректировка данных → Групповое изменение реквизитов. В ней выбирают вид документов, задают отбор по любым полям и указывают, какой реквизит на какое значение заменить. Выделять строки вручную не нужно: обработка возьмёт все документы, попавшие под отбор.
Отбор документов запросом
Для сложных условий удобна консоль запросов — внешняя обработка, которую администратор подключает в базу. Запрос возвращает ровно те документы, которые нужны, и результат можно проверить до каких-либо изменений. Пример выборки непомеченных реализаций за период:
ВЫБРАТЬ
Док.Ссылка КАК Документ,
Док.Дата КАК Дата,
Док.Номер КАК Номер,
Док.Проведен КАК Проведен
ИЗ
Документ.РеализацияТоваровУслуг КАК Док
ГДЕ
Док.Дата МЕЖДУ &НачалоПериода И &КонецПериода
И НЕ Док.ПометкаУдаления
УПОРЯДОЧИТЬ ПО
Док.Дата
Имя документа в запросе пишется так, как оно задано в конфигурации. В Бухгалтерии 3.0 реализация называется РеализацияТоваровУслуг, в других решениях имя может отличаться.
Как программист получает выделенные строки
Если вы дорабатываете форму списка и хотите добавить свою команду для выделенных документов, массив выделенных строк хранится в свойстве ВыделенныеСтроки элемента таблицы. Для списка документов в нём лежат ссылки на документы:
&НаКлиенте
Процедура ОбработатьВыделенные(Команда)
Выделенные = Элементы.Список.ВыделенныеСтроки;
Если Выделенные.Количество() = 0 Тогда
Сообщить("Не выделено ни одного документа");
Возврат;
КонецЕсли;
ОбработатьНаСервере(Выделенные);
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ОбработатьНаСервере(МассивСсылок)
Для Каждого Ссылка Из МассивСсылок Цикл
// здесь действие с документом Ссылка
КонецЦикла;
КонецПроцедуры
Изменения в форме типовой конфигурации правильнее вносить расширением, а не правкой основной конфигурации: так доработка переживёт обновление.
Почему не выделяются все строки и другие частые проблемы
Типичные ситуации, когда выделение работает не так, как ждёшь:
- ❌
Ctrl+Aничего не выделяет. Фокус стоит в поле поиска или отбора. Щёлкните по строке таблицы и нажмите сочетание ещё раз. - ❌ Выделяется только одна строка. Форма открыта в режиме выбора одного значения. Откройте список из раздела меню.
- ❌ Выделились не все документы. Действует период, поиск или забытый отбор. Сбросьте поиск и проверьте период.
- ❌ Команда применилась к одному документу. После выделения был обычный щелчок по строке, и выделение сбросилось.
- ❌ Не работает
в веб-клиенте. Браузер может перехватывать часть сочетаний клавиш. Используйте контекстное меню с командой
Выделить все.