0
Alexor
15.07.13
✎
12:38
|
Всем привет.
Использую индексированную таблицу.
Вывожу отчет.
Сортирует подгруппы не по порядку.
Где я ошибся?
Процедура ВывестиГруппировку(ИТЗ, Ном)
НазваниеГруппировки ="Товар";
ИТЗ.ВыбратьСтроки();
Пока ИТЗ.ПолучитьСтроку()=1 Цикл
ПечТекстСтроки = ИТЗ.ПолучитьЗначение(,НазваниеГруппировки);
ТекРасшифровка = ПечТекстСтроки;
Прибавить = 1;
Если ИТЗ.__ЭтоГруппа__ = 1 Тогда
Прибавить = 0;
Иначе
КонецЕсли;
Сообщить(ТекРасшифровка); // вывод значения
Если ИТЗ.НомерКолонки("тзПотомки") > 0 Тогда
Если ПустоеЗначение(ИТЗ.тзПотомки) = 0 Тогда
ВывестиГруппировку(ИТЗ.тзПотомки, Ном + Прибавить);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры //ВывестиГруппировку()
//*******************************************
Процедура Сформировать()
ТЗ=СоздатьОбъект("ТаблицаЗначений");
ТЗ.НоваяКолонка("Товар","Справочник.Номенклатура");
ТЗ.НоваяКолонка("Цена","Число");
Зап=СоздатьОбъект("Запрос");
ТекстЗапроса=
"
|Номенк = Справочник.Номенклатура.ТекущийЭлемент;
|Группировка Номенк без групп;";
Если ПустоеЗначение(НоменклатураШапка)=0 Тогда
ТекстЗапроса=ТекстЗапроса+"Условие (Номенк в НоменклатураШапка);";
КонецЕсли;
Если Зап.Выполнить(ТекстЗапроса)=0 Тогда
Сообщить("Ошибка запроса");
Возврат;
КонецЕсли;
Пока Зап.Группировка(1) =1 Цикл
ТЗ.НоваяСтрока();
ТЗ.Товар=Зап.Номенк;
КонецЦикла;
ТЗ.Сортировать("+Товар");
итз = создатьОбъект("ИндексированнаяТаблица");
итз.Загрузить(ТЗ);
ИТЗ.Группировать("ИндТовар:&Товар","Цена");
ВывестиГруппировку(ИТЗ,1);
КонецПроцедуры
|
|