Доброго дня всем! Форумчане, может кто подскажет как при включенном отборе в форме выбора справочника "Номенклатура" скрывать пустые группы? Убрать из показа нужно те группы, в которых после отбора нет ни одного элемента. Можно конечно отключить иерархию просмотра, но это не выход. Отбор делаю стандартным образом. Он работает, но остается много пустых групп.
<Code+>
Процедура ВыбНоменклатураНачалоВыбора(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ВыпускПродукции.Продукция.Ссылка КАК Продукция
|ИЗ
| РегистрНакопления.ВыпускПродукцииБухгалтерскийУчет КАК ВыпускПродукции
|ГДЕ
| НЕ ВыпускПродукции.КодОперации В (&СписокКодовОпераций)
| И ВыпускПродукции.Период МЕЖДУ &ДатаНачала И &ДатаКонца
| И ВыпускПродукции.Подразделение = &ВыбПодразделение
| И ВыпускПродукции.Организация = &ВыбОрганизация";
Сам делал через видимость в условном оформлении списка.
ЭлементОформления = ДС_ПодборУслуг.УсловноеОформление.Элементы.Добавить();
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
(1) У нас очень большой справочник Номенклатура, разные подразделения выпускают разную номенклатуру. в отбор должна попадать только номенклатура выпущенная в конкретном подразделении за конкретный период. отсюда возникают пустые группы. в них содержалась номенклатура других подразделений которая была отфильтрована отбором.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший