Всем привет. Столкнулся со странным поведением запроса в СКД при группировки данных, хотя в консоли запросов все отрабатывает как нужно.

Вот для начала первоначальные данные, которые я тяну из временной таблицы, которая тоже получена на основе виртуальной таблицы регистра.

```1c
    ВЫБРАТЬ
    Таб.Номенклатура,
    Таб.ДатаКалендаря,
    Таб.КоличествоКонечныйОстаток
    ИЗ
    ТаблицаОстатковПоДням КАК Таб
```

Результаты в СКД и Консоли соответственно рис 1.png и 1_1.png.Здесь все верно.

Хочу просуммировать сколько дней не было остатков по номенклатуре запросом

```1c
    ВЫБРАТЬ
    Таб.Номенклатура,
    СУММА(ВЫБОР
    КОГДА Таб.КоличествоКонечныйОстаток <= 0
    ТОГДА 1
    ИНАЧЕ 0
    КОНЕЦ) КАК КоличествоДнейОтсутсвия
    ИЗ
    ТаблицаОстатковПоДням КАК Таб

    СГРУППИРОВАТЬ ПО
    Таб.Номенклатура
    ;
```

Результаты в СКД и Консоли соответственно рис 3.png и 3_3.png. Консоль все правильно расчитывает, а СКД вообще как будто не видит ни каких данных.
В чем может быть проблема и как это победить? Кто-нибудь с таким сталкивался?
---
Хорошо бы посмотреть полный запрос. Что видно из представленных снимков: в конечном запросе не используется поле "ДатаКалендаря". Для консоли запросов это не имеет значения, но для СКД это важно. Раз поле не используется, СКД вероятнее всего посчитало его ненужным, и посему "выкинуло" из всех запросов пакета, где оно использовалось. Такое решение СКД могло исказить результаты запроса, из-за чего и отчет получился пустой.

Самое простое решение - не отказываться от использования даты. Например, для подсчета количества дней отсутствия добавить новое вычисляемое поле:

```1c
    // Выражение:
    ВЫБОР КОГДА КоличествоКонечныйОстаток <= 0
    ТОГДА 1
    ИНАЧЕ 0
    КОНЕЦ

    // Ресурс:
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ
    ВЫБОР КОГДА КоличествоКонечныйОстаток <= 0
    ТОГДА ДатаКалендаря
    КОНЕЦ)
```
---
в СКД на закладке Ресурсы добавили ваш показатель "КоличествоДнейОтсутсвия" ?
---
да, конечно.
---
Хорошо бы посмотреть полный запрос. Что видно из представленных снимков: в конечном запросе не используется поле "ДатаКалендаря". Для консоли запросов это не имеет значения, но для СКД это важно. Раз поле не используется, СКД вероятнее всего посчитало его ненужным, и посему "выкинуло" из всех запросов пакета, где оно использовалось. Такое решение СКД могло исказить результаты запроса, из-за чего и отчет получился пустой.

Самое простое решение - не отказываться от использования даты. Например, для подсчета количества дней отсутствия добавить новое вычисляемое поле:

```1c
    // Выражение:
    ВЫБОР КОГДА КоличествоКонечныйОстаток <= 0
    ТОГДА 1
    ИНАЧЕ 0
    КОНЕЦ

    // Ресурс:
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ
    ВЫБОР КОГДА КоличествоКонечныйОстаток <= 0
    ТОГДА ДатаКалендаря
    КОНЕЦ)
```
---
Да, помогло.
---
В ресурсе укажите, что группировка по номенклатуре
---
Не помогло
---
Сталкивалась с таким поведение: в консоли запросов все работает - в компоновщике этот же самый запрос работает по-другому.
Насколько я поняла, компоновщик делает оптимизацию запроса - на свое усмотрение, и выполняемый запрос становится другим!!!

Вам нужно разделить на 2 запроса вот этот ваш запрос:

```1c
    ВЫБРАТЬ
    Таб.Номенклатура,
    СУММА(ВЫБОР
    КОГДА Таб.КоличествоКонечныйОстаток <= 0
    ТОГДА 1
    ИНАЧЕ 0
    КОНЕЦ) КАК КоличествоДнейОтсутсвия
    ИЗ
    ТаблицаОстатковПоДням КАК Таб

    СГРУППИРОВАТЬ ПО
    Таб.Номенклатура
    ;
```

Сначала без суммы - просто сформируейте поле

```1c
    ВЫБОР
    КОГДА Таб.КоличествоКонечныйОстаток <= 0
    ТОГДА 1
    ИНАЧЕ 0
    КОНЕЦ КАК КоличествоДнейОтсутсвия,
```

а уже в следующем запросе ВЫБРАТЬ примените СУММА() к этому полю!
---
Не, помогло. Первый запрос отрабатывает, а второй опять ничего не выводит. Решение в (5) не надо было выкидывать поле ДатаКалендаря.