Запросы — один из ключевых инструментов разработчика 1С. С их помощью извлекаются данные из базы, строятся отчёты и выполняется аналитика. В этой статье разберём, где именно можно писать запросы в 1С, какие инструменты для этого существуют и как выбрать подходящий вариант.
Консоль запросов — основной инструмент разработчика
Консоль запросов — это внешняя обработка, которая позволяет писать, отлаживать и выполнять запросы непосредственно в режиме «Предприятие», без изменения конфигурации.
- Стандартная консоль запросов — входит в состав многих типовых конфигураций (например, в инструменты разработчика).
- Инструменты разработчика (ИР) — популярная бесплатная подсистема с мощной консолью запросов, подсветкой синтаксиса и анализом плана запроса.
- Консоль запросов с диска ИТС — доступна подписчикам информационно-технологического сопровождения.
Типичный порядок работы: открываете обработку через «Файл → Открыть», пишете текст запроса на встроенном языке запросов, задаёте параметры и нажимаете «Выполнить».
Конфигуратор: запросы в модулях
Основное место, где запросы «живут» в прикладном решении, — это модули конфигурации:
- Модули объектов (справочников, документов, отчётов);
- Общие модули, для переиспользуемых процедур с запросами;
- Модули форм — когда данные нужны для отображения на форме;
- Модули менеджеров объектов.
Пример кода в модуле:
Запрос = Новый Запрос;
Запрос.Текст = «ВЫБРАТЬ Номенклатура.Ссылка ИЗ Справочник.Номенклатура КАК Номенклатура»;
Результат = Запрос.Выполнить.Выгрузить;
Конструктор запросов
Чтобы не писать текст запроса вручную, в конфигураторе есть визуальный конструктор запросов. Он вызывается из контекстного меню при редактировании текста модуля: правый клик → «Конструктор запроса». В нём можно:
- Выбрать таблицы и поля;
- Настроить соединения и объединения;
- Задать условия, группировки и итоги;
- Указать сортировку.
Конструктор сам сформирует корректный текст запроса — это удобно для новичков и для сложных запросов с множеством соединений.
Схема компоновки данных (СКД)
Если вы создаёте отчёт, запрос обычно пишется на закладке «Наборы данных» в схеме компоновки данных. Там тоже доступен конструктор запроса, а сам запрос становится источником данных для отчёта. Это стандартный подход для отчётов в управляемых формах.
Внешние инструменты и расширения
- EDT (1C:Enterprise Development Tools) — современная среда разработки с удобным редактором запросов и проверкой синтаксиса.
- Онлайн-консоли и обработки с Infostart — множество бесплатных консолей с дополнительными функциями (сравнение результатов, выгрузка в Excel).
Рекомендации
- Для отладки используйте консоль запросов — это быстрее, чем править модуль и перезапускать сеанс.
- Готовые запросы переносите в общие модули, чтобы избежать дублирования кода.
- Сложные запросы начинайте строить в конструкторе, а затем дорабатывайте текст вручную.
- Не забывайте про параметры запроса вместо конкатенации строк — это защита от ошибок и «внедрения» данных.
Писать запросы в 1С можно в нескольких местах: в консоли запросов для отладки, в модулях конфигуратора для прикладной логики, в схеме компоновки данных для отчётов и в среде EDT. Начинающим разработчикам рекомендуется освоить конструктор запросов и консоль, эти два инструмента закрывают большинство повседневных задач.