Здравствуйте
Есть запрос к РС.СрезПоследних, как сделать проверку на то, что он не вернет никакое значение?
---
Думаю самый просто вариант, взять в результате запроса любое поле, продублировать и сделать по нему условие:

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

```1c
    ВЫБОР
    КОГДА КОЛИЧЕСТВО(ЦеныНоменклатурыСрезПоследних.Номенклатура) > 0
    ТОГДА "Результат есть"
    ИНАЧЕ "результат пустой"
    КОНЕЦ КАК Результат
```
---
Есть две виртуальные таблицы, одна - запрос к РС.СрезПоследних(с отбором на дату), вторая - рег.бухгалтерии(с отбором на дату)
Хочу следать условие, если на Дату нету записи в РС, то чтобы брало с Рег.Бухгалтерии
---
Сделай объединение двух таблиц и бери первую запись
---
Что мешает сделать 2 запроса? Сначала к регистру сведений, и если в нем ничего не нашли, то уже к регистру бухгалтерии.
Зачем всегда обращаться к регистру бухгалтерии? Это как минимум, работать будет дольше.
---
Tailor_Made 21.07.20 11:10
(2)забыл уточнить, что проверку нужно сделать в самом запросе
Возможно, речь идет о большом пакете запросов
---
Тогда работать будет оно еще дольше))
---
при таком раскладе, то что я выше описал модифицируйте чуток)))

```1c
    ВЫБРАТЬ
    ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Результат,
    ЦеныНоменклатурыСрезПоследних.Цена
    ПОМЕСТИТЬ ВТСрезПоследнихЦен
    ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
    ГДЕ
    ЦеныНоменклатурыСрезПоследних.Номенклатура = &Номенклатура
    И ЦеныНоменклатурыСрезПоследних.ВидЦены = &ВидЦены

    СГРУППИРОВАТЬ ПО
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.Цена
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ ПЕРВЫЕ 1
    ПоступлениеТоваровУслугТовары.Номенклатура,
    ПоступлениеТоваровУслугТовары.Цена,
    ПоступлениеТоваровУслугТовары.Ссылка.Дата
    ПОМЕСТИТЬ ВТЦенаИзПоступления
    ИЗ
    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    ГДЕ
    ПоступлениеТоваровУслугТовары.Номенклатура = &Номенклатура

    СГРУППИРОВАТЬ ПО
    ПоступлениеТоваровУслугТовары.Номенклатура,
    ПоступлениеТоваровУслугТовары.Цена,
    ПоступлениеТоваровУслугТовары.Ссылка.Дата

    УПОРЯДОЧИТЬ ПО
    ПоступлениеТоваровУслугТовары.Ссылка.Дата УБЫВ
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТСрезПоследнихЦен.Результат,
    ВЫБОР
    КОГДА ВТСрезПоследнихЦен.Цена > 0
    ТОГДА ВТСрезПоследнихЦен.Цена
    ИНАЧЕ ВТЦенаИзПоступления.Цена
    КОНЕЦ КАК Цена
    ИЗ
    ВТСрезПоследнихЦен КАК ВТСрезПоследнихЦен,
    ВТЦенаИзПоступления КАК ВТЦенаИзПоступления
```

искуственно сделал нечто подобное)
---
Но зачем? В чем плюсы такого подхода? Только из-за лени сделать 2 простых запроса?
---
Дело в том, что есть конкретный ответ в (5) "есть две ВТ"....
Исходя из данных построен такой запрос.

И я не понимаю ваше Только из-за лени сделать 2 простых запроса?, если выше сами же и предлагали делать 2 запроса к каждому регистру...
---
Комментарий в (5) до этого не читал, но не видя запроса, можно долго гадать, что и зачем у ТС.

(12) если выше сами же и предлагали делать 2 запроса к каждому регистру
Не к каждому.
Если цель получить данные из регистра сведений, и только если их в нем нет, то брать из РБ, то можно сделать 1 запрос к регистру сведений. Обработать его. И только если данные не получены в этом запросе, выполнить отдельный запрос к РБ.
---
м, не плохой вариант!
и вы абсолютно правы,
но не видя запроса, можно долго гадать, что и зачем у ТС.
занимаемся Вангованием)
---
Это можно сделать всё одним запросом.
---
Спасибо, кэп))
---
Возможно, я чего-то недопонял, но мне кажется это решение далеко не тривиальное, ведь при удачном варианте, когда все данные получены из РС, надо исключить какое либо обращение к таблицам РБ в рамках одного запроса. Попробуйте написать такой для тех же цен номенклатуры, когда на входе ТЗ "Номенклатура,Дата" и нужно получить цену для каждой строки ТЗ из РС "Цены номенклатуры" или "по-среднему" из РБ, если данных в РС нет. Без обработки во встроенном языке, разумеется.
---
Благодарю всех за помощь! Я бы сам не справился, ваши мысли натолкнули на правильное решение
Сделал через Выбор Когда Количество(Реквизит)>0