Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Проблемы с ИндексированнаяТаблица, а может и нет (число прочтений - 1220 )
kye
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 36
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Проблемы с ИндексированнаяТаблица, а может и нет
06. Июля 2007 :: 14:29
Печать  
Не могу разобраться с группировками в индексированной таблице.  Для теста использовал следующий код:
Код
Выбрать все
Функция СпЗнИзСтроки(Стр)
	СпЗн = СоздатьОбъект("СписокЗначений");
	СпЗн.ИзСтрокиСРазделителями(""""+СтрЗаменить(Стр, ",",""","""));
	Возврат СпЗн;
КонецФункции
//*******************************************
Процедура Сформировать()
   ТЗ = СоздатьОбъект("ИндексированнаяТаблица");
   ТЗ.НоваяКолонка("ТипОплаты");
   ТЗ.НоваяКолонка("Дата");
   ТЗ.НоваяКолонка("Сумма");
   ТЗ.НоваяКолонка("IDСклад");

   Счета = СпЗнИзСтроки("50.18,50.18,50.18,50.18,50.18,50.19,50.19,50.19");
   Сумма = СпЗнИзСтроки("5954,20589.5,11714.5,25141,7140,3112,1620,427.5");
   Склады = СпЗнИзСтроки("1H,1J,1O,1Q,1R,1H,1J,1Q");


   Для Индекс = 1 по Счета.РазмерСписка() Цикл
	   ТЗ.НоваяСтрока();
	   ТЗ.Дата = '30.06.07';
	   ТЗ.Сумма = Число(Сумма.ПолучитьЗначение(Индекс));
 	     ТЗ.ТипОплаты = Счета.ПолучитьЗначение(Индекс);;
	 ТЗ.IDСклад = Склады.ПолучитьЗначение(Индекс);
   КонецЦикла;
   ТЗ.Группировать("Дата:Дата;IDСклад:IDСклад","Сумма");
   ТЗ.ВыбратьСтроки();
   Пока ТЗ.ПолучитьСтроку() = 1 Цикл
	   ТЗ.тзПотомки.Показать();
   КонецЦикла;
КонецПроцедуры
 


После группировки тзПотомки содержит только строки с типом оплаты 50.18, а строки с типом оплаты 50.19 пропадают. Что я сделал не так?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Проблемы с ИндексированнаяТаблица, а может и н
Ответ #1 - 06. Июля 2007 :: 21:30
Печать  
kye писал(а) 06. Июля 2007 :: 14:29:
Код
Выбрать все
   ТЗ.Группировать("Дата:Дата;IDСклад:IDСклад","Сумма");
 


После группировки тзПотомки содержит только строки с типом оплаты 50.18, а строки с типом оплаты 50.19 пропадают. Что я сделал не так?

Тип оплаты не входит в индекс группировки (и не является суммируемой колонкой) => результат не содержит осмысленных данных в этой колонке.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать