Имя: Пароль:
1C
1С v8
СКД не выводить в иерархии строку, если "Неопределено"
0 Sevish
 
02.09.25
10:20
Добрый день всем!
Вопрос очень простой: можно ли на СКД не выводить строку, если значение реквизита "Регистратор" = "Неопределено".

Запрос постой: делаю выборку документов с остатками и вывожу иерархически "Договор -> Регистратор".
Когда документы за период есть - всё красиво: нажимаем на плюсик у договора и видим документы.
Но когда документов нет - там пустая строка.
Вот её хочу убрать. Я пробовал сделать условие в запросе "ГДЕ Регистратор <> Неопределено", но тогда вообще строка с "Договором" пропадает, а мне надо её оставить.

Можно ли вообще такое на СКД реализовать?
Благодарю за ответы.
1 Kigo_Kigo
 
02.09.25
10:41
Попробуй через выбор когда не Регистратор = Неопределено
тогда МойРегистр.Регистратор
Конец как регистратор
2 Homer
 
02.09.25
10:46
ВЫБОР
    КОГДА ОстаткиИОбороты.Регистратор = НЕОПРЕДЕЛЕНО
        ТОГДА NULL
    ИНАЧЕ ОстаткиИОбороты.Регистратор
КОНЕЦ
3 Sevish
 
02.09.25
11:10
Не, дело не в выборке данных, а чтобы именно в отчете эту строку не было видно.
То есть вместо
"Договор
   <пустой документ>"
было
"Договор"
Дело в том, что если я в запросе отсекаю любым способом по неопределено - то и строка "Договор" не выводится, ибо нет документов :)

Иначе говоря: мне надо оставить эту строку "Неопределено", но при этом, чтобы она именно на стадии вывода в отчет (табличный документ) не выводилась.

Иначе говоря можно по другому сформулировать задачу:
есть 5 строк и в одной из них реквизит "Выводить = Ложь", то при выводе данных в отчет - не выводить именно эту строку, но при этом в самой выборке она должна присутствовать.
4 Sevish
 
02.09.25
11:16
Кога есть обороты и когда их нет.
5 Sevish
 
02.09.25
11:17
Вариант в запрос убрать через "<> Неопределено" не подходит, т. к. тогда на второй картинке и строка "Договор" исчезнет.
6 toypaul
 
гуру
02.09.25
11:18
у поля в роли есть признак - не выводить NULL. если сделаешь там NULL, возможно сработает. что-то я пробовал пару раз - не понятно когда точно работает, когда нет.

второй (надежный) вариант это отбор на группировке с исключением незаполненных полей
7 Sevish
 
02.09.25
11:20
Ну а сама выборка для вывода в отчет выглядит так.
Выборка сделана как надо, к ней у меня вопросов нет.
Просто на уровне "Договор" через левое соединение ещё некоторые параметры выводятся, убрал их в целях конфиденциальности :)
8 Sevish
 
02.09.25
11:26
(6) Благодарю!!! Реально решение! Не знал что всё так просто.
В запросе сделал "Регистратор" = "NULL" (если неопределено) и установил флажок.
9 Kigo_Kigo
 
02.09.25
11:26
а если попробовать результат поместить в ВТ, а потом в ВТ поудалять неопределено?
10 Sevish
 
02.09.25
11:33
(9) Нет, не в моем случае. Тогда вообще исчезнет строка с договором и он не выведется в отчет. Посмотри скрины в (7). Если удалить строку "Неопределено", то вторая выборка станет пустой.
11 Ненавижу 1С
 
гуру
02.09.25
11:41
(2) шило на мыло
12 Ненавижу 1С
 
гуру
02.09.25
11:42
(8) "Регистратор" = "NULL" это очень сильно
13 Sevish
 
02.09.25
11:58
(12) Зато результат достигнут.
14 Волшебник
 
02.09.25
12:42
(12)+ такое условие не имеет смысла.
Правильно: ЕСТЬ NULL
15 Ненавижу 1С
 
гуру
02.09.25
13:22
(13) вы стараетесь делать хорошо или лишь бы работало?
16 YaFedor
 
02.09.25
13:58
(12), (14) Неправильно, у него не условие на null, он в качестве значения поля берет null при определенных условиях
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn