Всем привет.

Есть такой код:

```1c
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, ОтборПересчета.ПолучитьНастройки(),,,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
```

СхемаКомпоновкиДанных тянется из макета документа. После второй строки представленного кода запрос в получившемся макете содержит левое поле выборки, которого нет в оригинальном запросе схемы документа, а также левое условие, которое тоже отсутствует в оригинальной схеме. Я уже всю голову сломал откуда они там берутся. Из-за этого получаемые данные не соответствуют ожидаемым и не сходятся с данными из консоли запроса.
Пример оригинального запроса
```1c
    ВЫБРАТЬ
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.Количество
    КОНЕЦ КАК Количество,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.КоличествоУпаковок
    КОНЕЦ КАК КоличествоУпаковок,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.Серия
    ИНАЧЕ ВТ_Предварительная.Серия
    КОНЕЦ КАК Серия,
    ЕСТЬNULL(ВТ_Предварительная.Номенклатура, кпИнвентаризацияТоваровТовары.Номенклатура) КАК Номенклатура,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.Характеристика
    ИНАЧЕ ВТ_Предварительная.Характеристика
    КОНЕЦ КАК Характеристика,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.Назначение
    ИНАЧЕ ВТ_Предварительная.Назначение
    КОНЕЦ КАК Назначение,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.СтатусУказанияСерий
    ИНАЧЕ ВТ_Предварительная.СтатусУказанияСерий
    КОНЕЦ КАК СтатусУказанияСерий,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.Цена
    ИНАЧЕ ВТ_Предварительная.Цена
    КОНЕЦ КАК Цена,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.Сумма
    КОНЕЦ КАК Сумма,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.КоличествоФакт
    ИНАЧЕ ВТ_Предварительная.КоличествоФакт
    КОНЕЦ КАК КоличествоФакт,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.КоличествоУпаковокФакт
    ИНАЧЕ ВТ_Предварительная.КоличествоУпаковокФакт
    КОНЕЦ КАК КоличествоУпаковокФакт,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.СуммаФакт
    ИНАЧЕ ВТ_Предварительная.СуммаФакт
    КОНЕЦ КАК СуммаФакт
    ИЗ
    ВТ_Предварительная КАК ВТ_Предварительная
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.кпИнвентаризацияТоваров.Товары КАК кпИнвентаризацияТоваровТовары
    ПО ВТ_Предварительная.Номенклатура = кпИнвентаризацияТоваровТовары.Номенклатура
    И ВТ_Предварительная.Характеристика = кпИнвентаризацияТоваровТовары.Характеристика
    ГДЕ
    кпИнвентаризацияТоваровТовары.Ссылка = &ТекущийДокумент
```

Пример получаемого запроса
```1c
    ВЫБРАТЬ
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.Количество
    КОНЕЦ КАК Количество,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.КоличествоУпаковок
    КОНЕЦ КАК КоличествоУпаковок,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.Серия
    ИНАЧЕ ВТ_Предварительная.Серия
    КОНЕЦ КАК Серия,
    ЕСТЬNULL(ВТ_Предварительная.Номенклатура, кпИнвентаризацияТоваровТовары.Номенклатура) КАК Номенклатура,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.СтатусУказанияСерий
    ИНАЧЕ ВТ_Предварительная.СтатусУказанияСерий
    КОНЕЦ КАК СтатусУказанияСерий,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.Цена
    ИНАЧЕ ВТ_Предварительная.Цена
    КОНЕЦ КАК Цена,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.Сумма
    КОНЕЦ КАК Сумма,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.КоличествоФакт
    ИНАЧЕ ВТ_Предварительная.КоличествоФакт
    КОНЕЦ КАК КоличествоФакт,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.КоличествоУпаковокФакт
    ИНАЧЕ ВТ_Предварительная.КоличествоУпаковокФакт
    КОНЕЦ КАК КоличествоУпаковокФакт,
    ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА кпИнвентаризацияТоваровТовары.СуммаФакт
    ИНАЧЕ ВТ_Предварительная.СуммаФакт
    КОНЕЦ КАК СуммаФакт,
    (ЕСТЬNULL(ВТ_Предварительная.Номенклатура, кпИнвентаризацияТоваровТовары.Номенклатура)).Наименование КАК Поле1
    ИЗ
    ВТ_Предварительная КАК ВТ_Предварительная
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.кпИнвентаризацияТоваров.Товары КАК кпИнвентаризацияТоваровТовары
    ПО ВТ_Предварительная.Номенклатура = кпИнвентаризацияТоваровТовары.Номенклатура
    И ВТ_Предварительная.Характеристика = кпИнвентаризацияТоваровТовары.Характеристика
    ГДЕ
    кпИнвентаризацияТоваровТовары.Ссылка = &ТекущийДокумент
    И ВЫБОР
    КОГДА ВТ_Предварительная.Номенклатура ЕСТЬ NULL
    ТОГДА 0
    ИНАЧЕ ВТ_Предварительная.Количество
    КОНЕЦ <> &П
```

Появилось Поле1, левое условие и левый параметр. Откуда они могли взяться?
---
"Поле1" вероятнее всего было добавлено для формирования представления номенклатуры. Возможно, наименование участвует в выражении представления.
Условие же могло появиться при наличии установленного отбора в настройках СКД по полю "Количество".
---
"Поле1" вероятнее всего было добавлено для формирования представления номенклатуры. Возможно, наименование участвует в выражении представления.
Условие же могло появиться при наличии установленного отбора в настройках СКД по полю "Количество".
---
Спасибо.
---
(ЕСТЬNULL(ВТ_Предварительная.Номенклатура, кпИнвентаризацияТоваровТовары.Номенклатура)).Наименование КАК Поле1 Это поле возможно появилось ввиду того что вы добавили сортировку в настройках схемы, а левое условие и параметр, возможно что у вас для поля количество установлена роль на игнорирование пустых значений. Может из за этого все было дописано. Обратите на это внимание
---
То есть дописание запроса в СКД связано с вашими какими то настройками в самой компоновке. Посмотрите например на количество, может где то для него что то установили дополнительно и про наименование так же

На ИТС есть некоторые дополнения по схеме и особенности работы, может вы найдете там свое https://its.1c.ru/db/v838doc#bookmark:dev:TI000000640