Поиск элемента справочника, документа и записи в базе 1С 8.3

· 9 мин

Содержание

Элемент найти можно пятью способами, и выбор зависит от того, что у вас на руках. Знаете часть названия или номер, ищите в самом списке через Ctrl+F. Помните только смысл, подключайте полнотекстовый поиск. Нужно понять, где элемент используется, берите команду «Где используется». Программисту доступны поиск по конфигурации и запрос к данным.

Ниже все способы, от простого к сложному. Первые три подойдут любому пользователю, остальные нужны администратору и разработчику. Описание дано для обычных управляемых форм платформы 8.3.

Поиск в списке: быстрый способ найти элемент справочника

Откройте нужный справочник или журнал документов , например Справочники → Номенклатура или список контрагентов. Над таблицей находится строка поиска. Вызвать её можно и с клавиатуры: Ctrl+F.

Введите часть названия и нажмите Enter. Список сократится до подходящих строк. Чтобы вернуться ко всем записям, нажмите Ctrl+Q или кнопку отмены поиска рядом со строкой.

Что стоит знать:

  • 🔎 Поиск идёт по текущей колонке. Встали курсором на колонку «Код», значит ищете по коду. Хотите искать по наименованию, щёлкните ячейку из этой колонки и повторите поиск.
  • 🔎 В большом списке поиск по части слова может работать медленнее, чем по началу строки. Если знаете начало названия, вводите именно его.
  • 🔎 В журнале документов удобнее всего искать по номеру. Курсор в колонку «Номер», введите номер, нажмите Enter.
  • 🔎 Пустой результат ещё не значит, что записи нет. Проверьте, не включён ли отбор над списком и не скрыты ли помеченные на удаление элементы.

Если нужно найти запись в иерархическом справочнике, а список показывает только текущую папку, переключите вид на «Список» (кнопка режима просмотра) или найдите элемент в дереве. Иначе поиск ограничится открытой группой.

Расширенный поиск по нескольким полям

Одной колонки бывает мало: нужен контрагент по ИНН и части названия, или документ по сумме и контрагенту. Для этого в строке поиска есть команда расширенного поиска, сочетание Alt+F.

В окне задаёте:

  1. Поле, по которому ищете (можно выбрать любую колонку списка).
  2. Вид совпадения: «по части строки», «с начала строки» или «по всему полю».
  3. Значение.

Условий можно добавить несколько, они работают вместе. Результат остаётся в списке, пока не отмените поиск.

Отбор вместо поиска

Если искомых записей много и вам нужна выборка, а не одна строка, удобнее отбор. Щёлкните ячейку с нужным значением и выберите «Отбор по значению в текущей колонке» (Ctrl+Alt+F). Список оставит только строки с таким же значением. Снять отбор можно крестиком над списком.

Где используется элемент: как найти связанные записи

Бывает, что нужно найти не сам элемент, а то, что на него ссылается. Типичный случай: контрагента нельзя удалить, потому что он указан в документах. Или нужно понять, в каких документах встречается конкретный склад.

Выделите элемент в списке, откройте меню «Все действия» и выберите «Где используется». Платформа покажет документы, регистры и другие объекты со ссылкой на выбранный элемент.

Для дублей удобнее штатная обработка поиска и удаления дублей. Обычно она лежит в разделе администрирования, в подразделе обслуживания или корректировки данных. Точное название пункта зависит от конфигурации, поэтому проще набрать «Поиск и удаление дублей» в строке поиска по командам.

Перед объединением дублей сделайте копию базы. Обратно разделить объединённые элементы невозможно: все ссылки в документах переписываются на оставшийся элемент.

Полнотекстовый поиск: когда не помните точное название

Обычный поиск требует знать, где искать. Полнотекстовый ищет слово сразу по всем объектам: справочникам, документам, комментариям. Подходит, когда вы помните, что где-то писали «по договору аренды склада», но не помните, в каком документе.

Чтобы он заработал, нужно выполнить два шага:

  1. Включить полнотекстовый поиск в настройках программы. Нужный пункт находится в разделе Администрирование (подраздел общих настроек). Нужны права администратора.
  2. Дождаться, пока индекс построится. На большой базе это занимает от десятков минут до нескольких часов, пока идёт обновление индекса, результаты неполные.

После этого строка поиска в верхней части окна ищет по всей базе. Результаты показываются списком с фрагментами текста, а клик по строке открывает объект.

Что учитывать:

  • Ищутся слова, а не произвольные куски. Поиск по «кабел» найдёт «кабель», но не обязательно найдёт «электрокабель».
  • Поиск учитывает морфологию: «договора» найдёт «договор».
  • Новые записи попадают в индекс не мгновенно. Если только что созданный документ не находится, подождите или обновите индекс из настроек.
  • Для баз на сервере индексом занимается фоновое задание, поэтому нагрузку на сервер лучше планировать на нерабочее время.

Как найти элемент по номеру, ссылке или названию в поле ввода

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

В поле ввода начните набирать название. Платформа покажет подсказки. Если вариантов много, нажмите F4, откроется полный список, а в нём работает всё, что описано выше. Для быстрого выбора есть и другой приём: наберите часть названия и нажмите Tab. Если вариант единственный, поле заполнится сразу.

Для переноса ссылки на запись между сотрудниками у объекта есть команда получения навигационной ссылки (ищите её в меню «Все действия» или в контекстном меню формы). Коллега вставляет такую ссылку в браузер или в окно «Перейти по ссылке», и 1С открывает нужный объект без поиска.

Какой способ поиска вам подходит?

Поиск в Конфигураторе: как найти объект и код

Эти способы нужны разработчику и администратору, которые разбираются с настройкой конфигурации. Обычному пользователю в Конфигуратор заходить не надо, а при неосторожных правках можно сломать базу.

Прежде чем открывать Конфигуратор на рабочей базе, сделайте выгрузку информационной базы. Если в базе работают другие пользователи, учтите, что часть операций требует монопольного доступа, и сеансы придётся завершить.

Основные приёмы:

  • Дерево конфигурации. Раскройте ветку, например «Справочники», и начните набирать имя объекта. Курсор переместится на подходящую строку.
  • Поиск по тексту модулей. Ctrl+Shift+F ищет строку по всей конфигурации: в модулях, формах, макетах. Результаты собираются в отдельное окно. Двойной щелчок переходит в нужное место кода.
  • Поиск в открытом модуле. Ctrl+F ищет внутри текущего окна, F3 переходит к следующему совпадению.
  • Поиск ссылок на объект. Для объекта метаданных в контекстном меню есть команда поиска ссылок. Она покажет, где объект используется в конфигурации: в формах, подсистемах, ролях.

Если нужно найти не объект конфигурации, а запись базы (конкретный элемент справочника), Конфигуратор не поможет. Для этого есть режим «1С:Предприятие» с описанными выше способами или запрос.

Поиск в отчётах и обработках

Иногда нужный элемент спрятан не в списке, а в отчёте: контрагент в оборотно-сальдовой ведомости, документ в карточке счёта. Здесь работают свои приёмы.

  • 📊 В сформированном отчёте нажмите Ctrl+F. Откроется строка поиска по тексту ячеек. Она ищет только то, что уже выведено на экран.
  • 📊 Чтобы не листать длинную ведомость, добавьте отбор в настройках отчёта: по контрагенту, договору, счёту. Отчёт построится уже с нужными строками.
  • 📊 Двойной щелчок по строке отчёта (расшифровка) открывает документ или элемент справочника, откуда пришла сумма.
  • 📊 Для поиска документов по реквизитам внутри табличных частей, например по номенклатуре в строках, используйте журнал документов с отбором или отчёт по движениям. Обычный поиск в списке смотрит только шапку.

Среди обработок общего назначения есть инструменты для массовых операций: поиск и замена значений, групповое изменение реквизитов. Их набор зависит от конфигурации и версии, а в части программ они подключаются отдельно. Перед массовой заменой проверьте результат поиска глазами: заменять вслепую то, что нашла обработка, нельзя.

Запрос к данным: консоль запросов и язык запросов

Когда стандартных инструментов не хватает, например нужны все контрагенты с пустым ИНН или номенклатура без артикула, помогает запрос. Для этого используют консоль запросов. Это внешняя обработка, в платформу она не входит, но широко распространена, и многие ИТ-специалисты держат её под рукой. Подключайте только проверенную версию из надёжного источника.

Пример: найти номенклатуру, в названии которой есть слово «кабель».

ВЫБРАТЬ ПЕРВЫЕ 100
    Номенклатура.Ссылка КАК Ссылка,
    Номенклатура.Наименование КАК Наименование,
    Номенклатура.Код КАК Код
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.Наименование ПОДОБНО "%кабель%"
    И НЕ Номенклатура.ПометкаУдаления

Символ % означает любое количество любых символов. Условие ПОДОБНО "%кабель%" найдёт слово в любой части названия.

Ещё пример: контрагенты без ИНН.

ВЫБРАТЬ
    Контрагенты.Ссылка КАК Ссылка,
    Контрагенты.Наименование КАК Наименование
ИЗ
    Справочник.Контрагенты КАК Контрагенты
ГДЕ
    Контрагенты.ИНН = ""

Имена справочников и реквизитов в разных конфигурациях могут отличаться. Если запрос выдаёт ошибку, откройте конструктор запроса в консоли и выберите объекты из списка.

Прямые запросы к SQL: почему лучше обойтись без них

Иногда предлагают лезть в таблицы СУБД напрямую. Для поиска элемента это почти всегда лишнее. Платформа хранит данные в таблицах с техническими именами вроде _Reference123, а связь с метаданными нужно расшифровывать отдельно. Прямая запись в такие таблицы нарушает целостность, а чтение с сервера нагружает базу и обходит права доступа 1С.

Если всё-таки приходится заглядывать в СУБД, например для диагностики, делайте это только на чтение, лучше на копии базы и вне рабочих часов.

Почему поиск тормозит и как его ускорить

Если список открывается секунд по десять, а поиск по части названия «думает» ещё дольше, причина обычно одна из трёх.

ПричинаКак проверитьЧто сделать
Огромный список без отбораСколько записей в справочникеВключить отбор или группировку, не искать по всей базе
Поиск по части строки в большой таблицеБыстро ли работает поиск «с начала строки»Вводить начало названия
Устаревшая статистика СУБД и фрагментация (клиент-серверный вариант)Регламентные задания на сервереПопросить администратора настроить обслуживание индексов

На стороне конфигурации важны индексы. Платформа сама индексирует код и наименование справочников. Для собственных реквизитов, по которым вы часто ищете, разработчик может включить индексирование в свойствах реквизита. Это ускоряет выборки, но замедляет запись и увеличивает базу, поэтому включать индекс на каждый реквизит не нужно.

Ещё два правила для разработчика:

  1. В условиях запроса поле ставят слева, а значение справа. Функции над полем вроде ПОДСТРОКА(Наименование, 1, 3) = "Каб" отключают использование индекса.
  2. Ограничивайте выборку: ПЕРВЫЕ N и отбор по периоду берут из базы только нужное.

Если элемент так и не нашёлся

Пройдите по списку проверок:

  • ✅ Снят ли отбор над списком и режим «Показывать помеченные на удаление».
  • ✅ Не выбрана ли другая колонка для поиска.
  • ✅ Нет ли ограничения доступа к данным: у вас могут быть права только на часть записей, остальные скрыты.
  • ✅ Не открыта ли другая информационная база или другая организация: часть списков фильтруется по организации.
  • ✅ Не создан ли элемент с опечаткой или в латинской раскладке. Попробуйте найти «ООО» и «OOO» отдельно.

Если запись должна быть, но ни один способ её не находит, спросите администратора: возможно, её удалили, или база восстановлена из более старой копии.

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

Какая горячая клавиша открывает поиск в списке 1С?
Ctrl+F. Курсор попадает в строку поиска, а искать будет по колонке, в которой стоит курсор.
Как сбросить поиск и вернуть весь список?
Нажмите Ctrl+Q или кнопку отмены поиска рядом со строкой.
Почему поиск не находит запись, хотя она точно есть?
Чаще всего включён отбор, выбрана не та колонка или элемент помечен на удаление и скрыт. Реже у пользователя нет прав на эту запись.
Можно ли искать по всей базе одним запросом?
Да, для этого включают полнотекстовый поиск в настройках администрирования. Пока индекс строится, результаты будут неполными.
Нужна ли консоль запросов обычному бухгалтеру?
Нет. Для повседневной работы хватает поиска в списке, отбора и команды «Где используется». Запросы нужны, когда надо выбрать данные по сложному условию.