|
0
Паланик
04.03.12
✎
18:48
|
Выводил группировки справочника с иерархией, используя Таб.НачатьАвтоГруппировкуСтрок() и Таб.ЗакончитьАвтоГруппировкуСтрок() через рекурсию, всё работало отлично. Но теперь нужно выводить характеристики номенклатуры группируя их. Делаю по тому же принципу что и с группами и элементами, но ничего не получается.
...
Таб.НачатьАвтоГруппировкуСтрок();
ВложПокупатели(РезультатЗапроса, 0);
Таб.ЗакончитьАвтоГруппировкуСтрок();
...
Процедура ВложПокупатели(ВыборкаРодитель, Прист)
Перем Выборка;
Выборка = ВыборкаРодитель.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
СтараяНом = "";
Пока Выборка.Следующий() Цикл
ВыборкаСсылка = Выборка.Ссылка;
Если НЕ ВыборкаСсылка.ЭтоГруппа Тогда
Если ВыводитьНулевые Тогда
Строка.Параметры.Цена = ПолучитьЦену(ВыборкаСсылка);
Строка.Параметры.Заполнить(Выборка);
Строка.Параметры.Артикул = СокрЛП(Выборка.Артикул);
Строка.Параметры.Состав = ВыборкаСсылка.ПредставлениеСостава;
Строка.Параметры.ТорговаяМарка = ОбщегоНазначения.ПолучитьСвойство(ВыборкаСсылка, ТорговаяМарка);
Если СтараяНом = ВыборкаСсылка Тогда
Хар.Параметры.Харка = Выборка.Хар;
Таб.Вывести(Хар);
Иначе
Таб.Вывести(Строка, Прист + 1, РазворачиватьГруппировки);
КонецЕсли;
СтараяНом = ВыборкаСсылка;
КонецЕсли;
Иначе
Группа.Параметры.Наименование = Прав(Выборка.Наименование, СтрДлина(Выборка.Наименование) - (Найти(Выборка.Наименование, ".") + 1));
Таб.Вывести(Группа, Прист + 1, , РазворачиватьГруппировки);
КонецЕсли;
Состояние(Выборка.Наименование);
ВложПокупатели(Выборка, Прист + 1);
КонецЦикла;
КонецПроцедуры
|
|
|
4
Паланик
04.03.12
✎
19:11
|
Да
Таб.Вывести(Хар, Прист +2);
Я и не стал делать, думая, что раз в старом алгоритме группировалось по номенклатуре, но в её выводе не указывал уровень группировки, то и тут не надо.
|
|