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