Документ проводится в любом случае. Не пойму, что не так. Помогите!!!

```1c
    // регистр ОстатокЦветов Расход
    Движения.ОстатокЦветов.Записывать = Истина;
    Для Каждого ТекСтрокаЦветы Из Цветы Цикл
    Движение = Движения.ОстатокЦветов.Добавить();
    Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
    Движение.Период = Дата;
    Движение.Наименование = ТекСтрокаЦветы.Наименование;
    Движение.Цвет = ТекСтрокаЦветы.Цвет;
    Движение.Количество = ТекСтрокаЦветы.Количество;
    КонецЦикла;

    Движения.Записать();

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ОстатокЦветовОстатки.Наименование,
    | ОстатокЦветовОстатки.Цвет,
    | ОстатокЦветовОстатки.КоличествоОстаток КАК Количество
    |ИЗ
    | РегистрНакопления.ОстатокЦветов.Остатки(
    | &МоментВремени,
    | Наименование В
    | (ВЫБРАТЬ
    | СборкаБукетовЦветы.Наименование
    | ИЗ
    | Документ.СборкаБукетов.Цветы КАК СборкаБукетовЦветы
    | ГДЕ
    | СборкаБукетовЦветы.Ссылка = &Ссылка)) КАК ОстатокЦветовОстатки
    |ГДЕ
    | ОстатокЦветовОстатки.КоличествоОстаток < 0";

    Запрос.УстановитьПараметр("МоментВремени", МоментВремени());
    Запрос.УстановитьПараметр("Ссылка", Ссылка);

    РезультатЗапроса = Запрос.Выполнить();

    Если Не РезультатЗапроса.Пустой() Тогда
    Отказ = Истина;
    ВыборкаОшибки = РезультатЗапроса.Выбрать();
    Пока ВыборкаОшибки.Следующий() Цикл
    Сообщение = Новый СообщениеПользователю;
    Сообщение.Текст = "Товара "+ВыборкаОшибки.Наименование+": "+ВыборкаОшибки.Цвет+" недостаточно в количестве "+ВыборкаОшибки.Количество+" шт.";
    Сообщение.Сообщить();
    КонецЦикла;
    КонецЕсли;

    КонецПроцедуры
```
---
Проблему решил выбрав вместо Остатков ОстаткиИОбороты. Но не совсем понял почему так? Может кто объяснить?
---
Возможно, Вы остатки выбираете на момент начала документа, а не на момент его конца. Поэтому и в результате запроса товар всегда есть.
Попробуйте в качестве параметра периода в запрос передать такое:

```1c
    ГраницаПоДокумент = Новый Граница(МоментВремени(), ВидГраницы.Включая) ;
    Запрос.УстановитьПараметр("МоментВремени", ГраницаПоДокумент);
```
---
ГраницаПоДокумент = Новый Граница(МоментВремени(), ВидГраницы.Включая) ;
Запрос.УстановитьПараметр("МоментВремени", ГраницаПоДокумент);

Не помогло. Сейчас попробовал убрать все условия. Оставил такой код

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ОстатокЦветовОстатки.Наименование,
    | ОстатокЦветовОстатки.Цвет,
    | ОстатокЦветовОстатки.КоличествоОстаток
    |ИЗ
    | РегистрНакопления.ОстатокЦветов.Остатки(&МоментВремени, ) КАК ОстатокЦветовОстатки";

    ГраницаПоДокумент = Новый Граница(МоментВремени(), ВидГраницы.Включая) ;
    Запрос.УстановитьПараметр("МоментВремени", ГраницаПоДокумент);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    // Вставить обработку выборки ВыборкаДетальныеЗаписи
    КонецЦикла;
```

Сейчас попробовал убирать условия отбора поочерди. Не давал провести.
Убрал все условия. Через отладчик командой РезультатЗапроса.Выгрузить() проверил что он получает.

Индекс Значение элемента Тип элемента КоличествоОстаток Наименование Цвет
0 СтрокаТаблицыЗначений СтрокаТаблицыЗначений -2 Тюльпаны Розовый
1 СтрокаТаблицыЗначений СтрокаТаблицыЗначений -3 Тюльпаны Белый
2 СтрокаТаблицыЗначений СтрокаТаблицыЗначений -200 Тюльпаны Сиреневый

Хотя в регистре накопления остатков достаточно
---
Виртуальная таблица регистра накопления остатки выдает остатки на начало переданного параметра "Период".
Вот такая статья есть на этот счет:
https://its.1c.ru/db/pubapplied#content:132:hdoc:h132
---
Проблему решил выбрав вместо Остатков ОстаткиИОбороты. Но не совсем понял почему так? Может кто объяснить?
---
Надо для этого весь контекст смотреть. Виртуальные таблицы "Остатки" и "ОстаткиИОбороты" не могут разные остатки давать. Проблема может быть только в передаваемых праметрах, т.е. если мы чего-то не того передаем, то и не то получаем.
---
В виртуальной таблице ОстаткиИОбороты нужно выбрать метод дополнения "ДвиженияИГраницыПериода"