[ Вопрос дня ] Почему поля сортировки явно не указаны в оптимизированном результирующем запросе макета компоновки?

Доброго дня, коллеги!

Запрос 1С – “предмет темный и исследованию не подлежит”:) Хотя нет, конечно же подлежит.

В курсе по СКД подробно объясняется, как можно увидеть оптимизированный запрос, который на самом деле используется для получения данных из базы, как для этого можно использовать консоли компоновки. Слушатели, научившись просматривать результирующие запросы, начинают задавать любопытные вопросы по теме.

Вопрос

Здравствуйте! Почему, когда мы добавляем параметры виртуальных таблиц в тексте запроса в СКД, они явно прописываются в результирующем запросе макета компоновки, а когда указываем поля сортировки, то они нигде явно в оптимизированном запросе не фигурируют?

Ответ тренера

Добрый день!

В любом случае текст запроса, указанный в схеме компоновки в наборе данных, – это не окончательный вариант. То есть для получения данных из базы может использоваться не конкретно такой же запрос, как вы изначально написали, а видоизмененный. При этом учитываются настройки компоновки (выбранные поля, отборы и т.д.).

Например, в запросе набора данных выбирается 100 полей, а в конкретной настройке отчета используется только одно поле. В таком случае системе нет смысла выбирать все 100 полей из базы, достаточно только одного. И СКД таким образом оптимизирует выполняемый запрос.

Что касается сортировки, то данные, полученные из СУБД, передаются на сервер “1С:Предприятие”. Там они могут подвергаться дополнительной обработке (например, сортировка, расчет итогов, соединение наборов данных и прочее). Такие операции, действительно, мы не увидим в результирующем запросе макета компоновки.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Вход на сайт

Зарегистрироваться

Подтверждение регистрации будет отправлено на указанный e-mail.

Я подтверждаю, что ознакомлен(а) с Пользовательским соглашением, принимаю его условия и даю свое согласие на обработку моих персональных данных.

Восстановить доступ

E-mail или логин

Ссылка на создание нового пароля будет отправлена на указанный e-mail.