запросы в 1с скд

Работа с запросами в 1С СКД . Особенности работы запросов в СКД. Часть 1

Важно! Все действия в этом разделе проводились на платформе 8.3.15. Некоторые на платформе 8.3.14. В конфигурации режим совместимости установлен как «Не используется».
Все примеры разобраны с помощью консолей компоновки данных, речь о которых пойдет в предпоследнем разделе статьи.
Главная особенность системы компоновки данных (СКД) в 1С при работе с «наборами данных запрос» заключается в том, что запрос выполняемый платформой может отличаться от запроса, который вы написали в наборе данных.
В процессе чтения статьи вы уже сталкивались с таким поведением системы компоновки данных в разделе «Расширение языка запросов 1С для СКД». Это (наличие управляющих конструкций расширения в запросе) один из факторов, влияющих на результирующий запрос. Где можно «поймать» этот запрос вы могли заметить в разделе «Обманываем СКД» - в процедуре «ПриКомпоновкеРезультата» в отладчике при программном формировании отчета в объекте МакетКомпоновкиДанных можно обратиться к свойству «НаборыДанных», в наборе (если это набор данных запрос) смотрим свойство «Запрос».
В этом разделе разберем если не все, то большинство ситуаций срабатывания механизма замены (модификации) запроса. Среди них будут как ожидаемые, так и неожиданные примеры.

Вспомогательные данные

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

Начиная с определенного релиза платформы 1С (по-моему, с 8.3.14) в 1С СКД появилась для «наборов данных запрос» опция «Использовать группировки запроса если возможно»:
Посмотри наш курс по 1С СКД от Павла Шемякина.

Необязательное условие

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

Необязательная таблица

Такой пример мы тоже уже разбирали. Исходный запрос:
Видимо здесь имеет значение еще и порядок соединений в исходном запросе. Но все-таки надежней будет размещать таблицы в одной группе.

Продолжение читайте в следущей →части