Имя: Пароль:
1C
1C 7.7
v7: ИндексированнаяТаблица Группировать как добавить различные сортировки по группам
0 dk
 
21.05.14
14:59
Исходные:
Инд. таблица с колонками
Уровень1, Уровень2, Уровень3, Уровень4, Значение1, Значение2, Значение3
Делаю группировку
ИндТЗСгруппировать("Уровень1, Уровень2, Уровень3, Уровень4")
Проблема:
Хочу получить различные сортировки на разных уровнях
Например:
Уровень1 - сортировка +Уровень1
Уровень2 - сортировка *Уровень2
Уровень3 - сортировка +Значение1
Уровень4 - сортировка -Значение3
----
как такой вариант сортировки реализовать?
пробовал ТЗПотомки.сортировать  и ТЗпотомки.ДобавитьИндекс - что-то не выходит каменный цветок(
1 Ёпрст
 
гуру
21.05.14
15:01
дык при обходе сортируй, как хочешь и привет..
2 dk
 
21.05.14
15:01
ИндТЗСгруппировать("Уровень1, Уровень2, Уровень3, Уровень4","Значение1, Значение2, Значение3")
3 Ёпрст
 
гуру
21.05.14
15:01
получаешь тзпотомки в рекурсивной функции, её ужо и сортируешь, как хочешшь
4 dk
 
21.05.14
15:01
ИндТЗСгруппировать("Уровень1, Уровень2, Уровень3, Уровень4","Значение1, Значение2, Значение3")
----
дык говорю же сортирую ТЗпотомки - нихрена
5 Ёпрст
 
гуру
21.05.14
15:02
(2) дык, таким способом, у тебя всегда 1 уровень.. че там сортировать собрался ?
:)
6 dk
 
21.05.14
15:04
(5) чой то?
7 Ёпрст
 
гуру
21.05.14
15:04
да и.. мот так надо то было, не  ?

ИндТЗ.Группировать("Вася:Уровень1; Федя: Уровень2; Веня: Уровень3; ЕщеКтотоСловарныйЗапасОграничен: Уровень4","Значение1, Значение2, Значение3")
8 Ёпрст
 
гуру
21.05.14
15:05
9 dk
 
21.05.14
15:06
не ну естественно там строка другая (2) просто для примера
---
ИндТЗ.Группировать("ПриходРасход:ПриходРасход;ВидДвижения:*ВидДвижения;Документ_вид:Документ_вид;КлиентПодр:КлиентПодр;Клиент:*Клиент;Док:*Док;Склад:*Склад;","Количество,Себестоимость,Вес,Объем,ДокументоСтрок");
10 Ёпрст
 
гуру
21.05.14
15:10
(9) ну и ?
Далее сортируешь при обходе этой ИтЗ...
усё..
Т.е по-отдельности сортируешь ТЗ потомки при получении
11 dk
 
21.05.14
15:15
ТЗ_ВидыДвижений = ИндТЗ.ТзПотомки;
ТЗ_ВидыДвижений.Сортировать("+ВидДвижения");
{ОТЧЕТПОСКЛАДУ1_9.ERT(651)}: Колонка '+ВидДвижения' не найдена!
----
т.е. если в группировке указано ВидДвижения:*ВидДвижения
то я эту сортировку поменять на "+ВидДвижения" уже не могу?
12 ДенисЧ
 
21.05.14
15:17
(11) то есть открыть тз и посмотреть глазами список колонок не судьба?
13 dk
 
21.05.14
15:18
посмотрел конечно - есть там такая колонка
далее к ней обращение нормально отрабатывает - проблема именно при установке сортировки
14 Ёпрст
 
гуру
21.05.14
15:25
(11) а так ?
ТЗ_ВидыДвижений.Сортировать("ВидДвижения");
15 dk
 
21.05.14
15:32
(14) так робит
16 dk
 
21.05.14
15:34
ВидДвижения - это перечисление
--------
MAX(Влож.ВидДвижения)   [ВидДвижения $Перечисление.ВидыДвижений]
17 Ёпрст
 
гуру
21.05.14
15:43
(15) ага, даже в доке об этом есть :)
там только минус и звездочку можно пихать
18 dk
 
21.05.14
15:45
вот ведь ироды
спасибо
19 varelchik
 
21.05.14
16:22
(18) без значков  это и есть +.