Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

СКД: Определить включен или нет пользовательский отбор

СКД: Определить включен или нет пользовательский отбор
Я
   PuhUfa
 
30.07.21 - 10:49
Есть простой запрос на СКД:

ВЫБРАТЬ
    ЗаказКлиентаТовары.Номенклатура КАК Номенклатура
ПОМЕСТИТЬ ФильтрПоЗаказу
ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
{ГДЕ
    ЗаказКлиентаТовары.Ссылка КАК ЗаказКлиентДляОтбора}
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Номенклатура.Наименование КАК Наименование,
    Номенклатура.Ссылка КАК Ссылка
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.Ссылка В
            (ВЫБРАТЬ
                ФильтрПоЗаказу.Номенклатура
            ИЗ
                ФильтрПоЗаказу КАК ФильтрПоЗаказу)

В настройка СКД, поле ЗаказКлиентДляОтбора, добавлено в отбор. Все хорошо. Выбираем Заказ клиента, в отчет попадает только номенклатура этого заказа. Но вот если мы выключаем отбор, то в отчет попадает номенклатура из всех Заказов клиента. А хочется что бы попадала вообще вся номенклатура. Т.е. что бы, например, было так:

ГДЕ
    КОГДА &ОтборПоЗаказуВключен
        ТОГДА Номенклатура.Ссылка В
            (ВЫБРАТЬ
                ФильтрПоЗаказу.Номенклатура
            ИЗ
                ФильтрПоЗаказу КАК ФильтрПоЗаказу)
    ИНАЧЕ Истина
    КОНЕЦ

Понимаю, что можно это сделать ПриКомпоновкеРезультата, но можно ли это сделать в настройках самой СКД?
   Малыш Джон
 
1 - 30.07.21 - 10:54
(0) в схеме компоновки данных нет пользовательских отборов
Они появляются в макете компоновке данных
   PuhUfa
 
2 - 30.07.21 - 11:00
(1) Ну если брать именно вариант с &ОтборПоЗаказуВключен, то параметр доступен на закладке Параметры. Вдруг там можно как то извратится и задавать его как значением вкл/выкл из отбора -)
Мне так, для общего развития так сказать -)
   Малыш Джон
 
3 - 30.07.21 - 11:06
(2) >>Вдруг там можно как то извратится

если тебе нужно использовать пользовательский отбор, то нужно использовать стандартный функционал СКД, а не извращаться.
В запросе убери " Номенклатура.Ссылка В (ВЫБРАТЬ..." и добавь поле Заказ.
Вкладка "Настройка", внизу вкладка "Отбор". Там добавь отбор по этому полю.
   Малыш Джон
 
4 - 30.07.21 - 11:07
ВЫБРАТЬ
    ЗаказКлиентаТовары.Номенклатура КАК Номенклатура
    ЗаказКлиентаТовары.Ссылка       КАК ЗаказКлиента
ИЗ
    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
   PuhUfa
 
5 - 30.07.21 - 11:11
(4) В реальном отчете все гораздо сложнее. В (0) просто пример что бы не вываливать сюда тонны ненужных строк -) Но все равно спасибо!

Список тем форума
 
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.