Так как динамический список может быть настроен пользователем, то результат может содержать разное количество полей. Неиспользуемые поля не попадают в результирующий запрос СКД. Если поле должно всегда входить в запрос, то у соответствующего поля надо поставить галку "Использовать всегда".
Запрашиваемые таблицы и связи в запросе остаются независимо от набора полей результирующего запроса. Если мы уверены, что удаление таблицы из запроса не приведет к искажению данных, то надо на вкладке "Компоновка данных" убрать галку "Обязательная" у соответствующей таблицы.
Чтобы убедиться в том, что таблица не попадает в оптимизируемый запрос, при удалении полей этой таблицы в настройках динамического списка, можно получить исполняемую схему и настройки с помощью методов:
Схема = Элементы.Список.ПолучитьИсполняемуюСхемуКомпановкиДанных();
Настройки = Элементы.Список.ПолучитьИсполняемыеНастройкиКомпановкиДанных();
Далее выполняем компоновку и получаем макет, в котором можно посмотреть итоговый запрос:
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
Макет = КомпоновщикМакета.Выполнить(Схема , Настройки);
Итоговый запрос находится в Макет.НаборыДанных.НаборДанныхДинамическогоСписка.Запрос
|