Конструктор запроса
Конструктор запроса – это инструмент разработчика, включенный в систему 1С:Предприятие, позволяющий составлять и редактировать текст запроса к базе данных на языке запросов. Конструктором могут воспользоваться разработчики в конфигураторе и квалифицированные пользователи, обладающие знаниями языка запросов без использования конфигуратора в режиме 1С:Предприятие.
В системе 1С:Предприятие есть два конструктора запроса:
- «Конструктор запроса» – составляет и редактирует текст запроса.
- «Конструктор запроса с обработкой результата» – составляет, редактирует текст запроса и формирует программный код, содержащий создание объекта встроенного языка «Запрос», текста запроса, получение результата выполнения запроса с обходом его, либо с выводом в табличный документ или диаграмму.
«Конструктор запроса» можно вызвать в программном модуле с помощью пункта меню «Текст – Конструктор запроса…» или с помощью пункта контекстного меню «Конструктор запроса…», также вызывается «Конструктор запроса с обработкой результата».
Запрос в «Конструкторе запроса» можно открыть на редактирование, если в нем нет синтаксических ошибок, при этом в тексте запроса можно писать комментарий, но при открытии запроса с комментарием в «Конструкторе запроса» с последующим сохранением, даже без внесения изменений, комментарий удаляется.
Для построения текста запроса, с возможностью проверки работоспособности в режиме 1С:Предприятие используется внешняя обработка «Консоль запросов» для управляемого приложения. Обработку можно скачать на сайте 1С:ИТС по ссылке – https://its.1c.ru/db/metod8dev/content/4500/hdoc
Закладки конструктора запроса
«Конструктор запроса» состоит из закладок:
- «Таблицы и поля» – выбираются таблицы и поля, которые будут отражаться в запросе. В качестве источника данных могут выступать реальные и виртуальные таблицы, в качестве полей могут выступать поля из источников данных, а также произвольные выражения.
На этой закладке можно создать вложенный запрос, используя в командной панели «Таблицы» кнопку «Создать вложенный запрос» или выбрать пункт контекстного меню «Добавить».
Для добавления вычисляемого поля, необходимо в командной панели «Поля» нажать кнопку «Добавить» или выбрать пункт контекстного меню «Добавить».
- «Связи» – настраивается связь между выбранными таблицами. Существует несколько связей: внешнее левое соединение, внешнее правое соединение, внешнее полное соединение и внутреннее соединение.
- «Группировка» – настраивается группировка по выбранным полям и применение агрегатных функций. На закладке достаточно указать суммируемые поля, все остальные при сохранении запроса автоматически попадут в список полей группировки.
- «Условия» – указываются условия на значения выбранных полей источников, а также условия на значения агрегатных функций.
- «Дополнительно» – находятся разнообразные параметры настройки запроса такие как:
- Выборка первых записей
- Выборка без повторяющихся записей
- Выборка разрешенных
- Создание и уничтожение временных таблиц
- Установка блокировок на получаемые данные для последующего изменения
- «Объединения/Псевдонимы» – настраивается объединение запросов и псевдонимы полей
- «Индексы» – для временных таблиц можно указать поля индексирования, по которым эта временная таблица будет соединяться с другими таблицами для повышения скорости соединения
- «Построитель» – используется для построения динамического текста запроса
- «Порядок» – используется для организации сортировки значений в полях по возрастанию или по убыванию. Для виртуальных таблиц не используется
- «Итоги» – используется для получения итогов по выбранным полям
- «Пакет запроса» – используется для создания нескольких запросов в рамках одного пакета, также в качестве отдельного запроса может выступать временная таблица
Конструктор ограничений доступа к данным
Конструктор ограничений доступа к данным – это инструмент разработчика, включенный в систему 1С:Предприятие, позволяющий составлять и редактировать текст ограничения доступа к данным на уровне записей и полей базы данных. В конструкторе возможно использовать любые таблицы, которые можно связать с полями, на которые накладываются ограничения.
Текст запроса ограничения доступа можно сформировать вручную или с помощью «Конструктора ограничения доступа к данным». В тексте запроса не используется ключевое слово «Выбрать».
В конструкторе по умолчанию есть две закладки – «Таблицы и поля» и «Условия», при добавлении, на закладке «Таблицы и поля» двух и более таблиц появляется третья закладка «Связи». Если в тексте запроса ограничения используются связи и условия, то настройки, выполненные на обеих закладках конструктора, участвуют в определении условия на доступ к данным.
Ваганов Сергей, эксперт в области разработки прикладных решений на платформе 1С:Предприятие, преподаватель-методист CORS Academy и автор курса «Разработчик 1С с нуля до профессионала».
Статья создана на основе материалов курса «Разработчик 1С с нуля до профессионала».
