Имя: Пароль:
1C
1C 7.7
v7: 1с++ Проблема с группировкой индексированной таблицы
0 Alexor
 
15.07.13
12:38
Всем привет.

Использую индексированную таблицу.
Вывожу отчет.
Сортирует подгруппы не по порядку.
Где я ошибся?





Процедура ВывестиГруппировку(ИТЗ, Ном)
   
   
   НазваниеГруппировки ="Товар";
   
   ИТЗ.ВыбратьСтроки();
   Пока ИТЗ.ПолучитьСтроку()=1 Цикл
       ПечТекстСтроки = ИТЗ.ПолучитьЗначение(,НазваниеГруппировки);  
       
       ТекРасшифровка = ПечТекстСтроки;
       Прибавить = 1;  
       
       Если ИТЗ.__ЭтоГруппа__ = 1 Тогда
           Прибавить = 0;
       Иначе
       КонецЕсли;    
       
       
       Сообщить(ТекРасшифровка); // вывод значения
       
       Если ИТЗ.НомерКолонки("тзПотомки") > 0 Тогда
           Если ПустоеЗначение(ИТЗ.тзПотомки) = 0 Тогда
               ВывестиГруппировку(ИТЗ.тзПотомки, Ном + Прибавить);
           КонецЕсли;    
       КонецЕсли;
   КонецЦикла;              
   
КонецПроцедуры //ВывестиГруппировку()

//*******************************************
Процедура Сформировать()
         
   
   ТЗ=СоздатьОбъект("ТаблицаЗначений");
   ТЗ.НоваяКолонка("Товар","Справочник.Номенклатура");
   ТЗ.НоваяКолонка("Цена","Число");
   
   Зап=СоздатьОбъект("Запрос");
   ТекстЗапроса=
   "
   |Номенк    = Справочник.Номенклатура.ТекущийЭлемент;  
   |Группировка Номенк без групп;";
   
   Если ПустоеЗначение(НоменклатураШапка)=0 Тогда
       ТекстЗапроса=ТекстЗапроса+"Условие (Номенк в НоменклатураШапка);";
   КонецЕсли;
   
   Если Зап.Выполнить(ТекстЗапроса)=0 Тогда
       Сообщить("Ошибка запроса");
       Возврат;
   КонецЕсли;                                


   Пока Зап.Группировка(1)    =1 Цикл
       ТЗ.НоваяСтрока();    
       ТЗ.Товар=Зап.Номенк;
   КонецЦикла;
                               
   ТЗ.Сортировать("+Товар");
   
   итз = создатьОбъект("ИндексированнаяТаблица");
   итз.Загрузить(ТЗ);
                       
   ИТЗ.Группировать("ИндТовар:&Товар","Цена");
 
   ВывестиГруппировку(ИТЗ,1);
КонецПроцедуры
1 viktor_vv
 
15.07.13
12:46
Скорее всего из-за итогов по группам

ИндТовар:&Товар

сортировал-то ты без групп, а как оно туда прилепило группы и сто произошло с сортировкой ХЗ.

Сортируй при выводе в ВывестиГруппировку.
2 Ёпрст
 
гуру
15.07.13
12:54
И.. где у тебя там вообще подгруппы ?!
3 Ёпрст
 
гуру
15.07.13
12:56
& чорт, не увидел..
4 Ёпрст
 
гуру
15.07.13
12:56
ну дык сортируй сам, на выходе по наименованию.
5 Alexor
 
15.07.13
13:02
(1) (4) Спасибо, что то затупил.

Почему-то "само" сортировалось при группировке нормально до этого.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший