Вывод колонок по условию в СКД

1. user1030103 11.09.20 06:45 Сейчас в теме
Добрый день!

Столкнулась с проблемой вывода колонок в отчете на СКД по условию.
На 1 скриншоте показано, как нужно, чтобы формировался отчет.
На 2 скриншоте показано, как отчет работает. Единственное, чего получилось добиться, показано на 3 скриншоте (с помощью условного оформления).

Запрос следующий:

ВЫБРАТЬ
	УровниОтветственности.Ссылка
ПОМЕСТИТЬ ВТ_УровниОтветственности
ИЗ
	Справочник.УровниОтветственности КАК УровниОтветственности
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	СводПоУровнюСервисаТовары.Контрагент,
	СводПоУровнюСервисаТовары.Ссылка,
	СводПоУровнюСервисаПричины.КоличествоВес,
	СводПоУровнюСервисаПричины.Причина.Ответственность КАК Ответственность
ПОМЕСТИТЬ ВТ_Причины
ИЗ
	Документ.СводПоУровнюСервиса.Товары КАК СводПоУровнюСервисаТовары
		ЛЕВОЕ СОЕДИНЕНИЕ Документ.СводПоУровнюСервиса.Причины КАК СводПоУровнюСервисаПричины
		ПО СводПоУровнюСервисаТовары.Ссылка = СводПоУровнюСервисаПричины.Ссылка
			И СводПоУровнюСервисаТовары.Ключ = СводПоУровнюСервисаПричины.Ключ
ГДЕ
	НАЧАЛОПЕРИОДА(СводПоУровнюСервисаПричины.Ссылка.Дата, ДЕНЬ) = &Дата
{ГДЕ 
	(СводПоУровнюСервисаПричины.Ссылка.Склад = &Склад),
	(СводПоУровнюСервисаТовары.Номенклатура В ИЕРАРХИИ(&Номенклатура)),
	(СводПоУровнюСервисаТовары.Контрагент В ИЕРАРХИИ(&Контрагент))}
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Причины.Контрагент,
	ВТ_УровниОтветственности.Ссылка КАК Ответственность,
	СУММА(ЕСТЬNULL(ВЫБОР
				КОГДА ВТ_УровниОтветственности.Ссылка ЕСТЬ NULL
					ТОГДА NULL
				ИНАЧЕ ВТ_Причины.КоличествоВес
			КОНЕЦ, 0)) КАК КоличествоВес,
	NULL КАК ЗаявленоВес,
	NULL КАК ОтгруженоВес,
	NULL КАК НедовозВес
ИЗ
	ВТ_УровниОтветственности КАК ВТ_УровниОтветственности
		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Причины КАК ВТ_Причины
		ПО ВТ_УровниОтветственности.Ссылка = ВТ_Причины.Ответственность

СГРУППИРОВАТЬ ПО
	ВТ_Причины.Контрагент,
	ВТ_УровниОтветственности.Ссылка

ОБЪЕДИНИТЬ

ВЫБРАТЬ
	СводПоУровнюСервисаТовары.Контрагент,
	NULL,
	NULL,
	СУММА(СводПоУровнюСервисаТовары.ЗаявленоВес),
	СУММА(СводПоУровнюСервисаТовары.ОтгруженоВес),
	СУММА(СводПоУровнюСервисаТовары.НедовозВес)
ИЗ
	Документ.СводПоУровнюСервиса.Товары КАК СводПоУровнюСервисаТовары
ГДЕ
	НАЧАЛОПЕРИОДА(СводПоУровнюСервисаТовары.Ссылка.Дата, ДЕНЬ) = &Дата
{ГДЕ 
	(СводПоУровнюСервисаТовары.Ссылка.Склад = &Склад),
	(СводПоУровнюСервисаТовары.Номенклатура В ИЕРАРХИИ(&Номенклатура)),
	(СводПоУровнюСервисаТовары.Контрагент В ИЕРАРХИИ(&Контрагент))}

СГРУППИРОВАТЬ ПО
	СводПоУровнюСервисаТовары.Контрагент,
	СводПоУровнюСервисаТовары.Ссылка
Показать


Пробовала изменить процедуру ПриКомпоновкеРезультата

        Заявлено   = Настройки.Выбор.Элементы.Получить(1);
	Отгружено  = Настройки.Выбор.Элементы.Получить(2);
	Недовоз    = Настройки.Выбор.Элементы.Получить(3);
	Количество = Настройки.Выбор.Элементы.Получить(5);
	
		Для Каждого Элемент Из РезультатЗапроса Цикл
				Если Элемент.Ответственность = NULL Тогда 
					Количество.Использование = Ложь;
					Отгружено.Использование = Истина;
					Заявлено.Использование = Истина;
					Недовоз.Использование = Истина;
				Иначе 
					Количество.Использование = Истина;
					Отгружено.Использование = Ложь;
					Заявлено.Использование = Ложь;
					Недовоз.Использование = Ложь;
				КонецЕсли;
		КонецЦикла;
Показать


При этом из отчета полностью исчезает Количество.

Подскажите, пожалуйста, что можно с этим сделать (если возможно).
Заранее благодарю.

P.S. Причина на скрине - это ответственность из запроса.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
2. toypaul 63 11.09.20 07:52 Сейчас в теме
Должно быть две группировки колонок. Одна с пустой причиной, другая с непустой. С разным составом выбранных полей.
user1030103; +1 Ответить
3. toypaul 63 11.09.20 07:52 Сейчас в теме
И добавить отбор на группировке (пусто, не пусто). Тогда вообще ничего дополнительно делать не нужно
user1030103; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. toypaul 63 11.09.20 07:52 Сейчас в теме
Должно быть две группировки колонок. Одна с пустой причиной, другая с непустой. С разным составом выбранных полей.
user1030103; +1 Ответить
3. toypaul 63 11.09.20 07:52 Сейчас в теме
И добавить отбор на группировке (пусто, не пусто). Тогда вообще ничего дополнительно делать не нужно
user1030103; +1 Ответить
5. user1030103 11.09.20 11:45 Сейчас в теме
(3) Спасибо, сейчас попробую
6. user1030103 11.09.20 11:51 Сейчас в теме
(3) Да, получилось! Сердечно благодарю :)
4. Alexei_Siva 183 11.09.20 07:54 Сейчас в теме
Очевидно что для каждой колонки нужно настраивать свои выбранные поля, а в целом в отчете их не выбирать
7. Nik_Name 22 01.12.23 10:24 Сейчас в теме
Можно создать параметр (булево), использование всегда и вывести в быстрые настройки.

По значению этого параметра ставить максимальную ширину колонки в условном оформлении отчета.

Если Истина Тогда Максимальная ширина к примеру 50, если Ложь Тогда -0.1 (она станет невидимой).
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот