Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Индексированная таблица. Глюк, или я что-то не понимаю? (число прочтений - 4709 )
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Индексированная таблица. Глюк, или я что-то не понимаю?
05. Февраля 2010 :: 09:42
Печать  
Доброго времени, комарады.
в общем имеется код примерно такой строкутуры:
Код
Выбрать все
// Добавляем колонки, всем даем тип значения "Число" из таблицы показателей
    Табл.ВыбратьСтроки();
    Пока Табл.ПолучитьСтроку()=1 Цикл
	  Тз.НоваяКолонка(Табл.Показатель,"Число");
    КонецЦикла;
//потом заполнение ТЗ по запросам всяким
.....
//Загружаем что получилось в индексированную таблицу для дальнейших группировок и прочих извращений.
ИТЗ = СоздатьОбъект("ИндексированнаяТаблица");
ИТЗ.Загрузить(ТЗ);
потом
ИТЗ.НоваяСтрока();
 


и в этой новой строке незаполненные колонки оказались строками, а не нулями. (обнаружилось при сравнении их с нулем далее в обработке)
Я конечно переписал так чтобы работало, но интересен сам факт, индексированная таблица при загрузке из ТЗ не умеет типы колонок забирать?
  
Наверх
www  
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #1 - 05. Февраля 2010 :: 09:44
Печать  
Я так понял в Индексированной таблице вообще нет установки конкретного типа для колонки?))
  
Наверх
www  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #2 - 05. Февраля 2010 :: 09:52
Печать  
Lewkee писал(а) 05. Февраля 2010 :: 09:44:
Я так понял в Индексированной таблице вообще нет установки конкретного типа для колонки?))

Всё правильно понял. Подмигивание
  
Наверх
 
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #3 - 05. Февраля 2010 :: 10:48
Печать  
а почему так? это ж полезная вещь.
По дефолту колонку считать строкой - как то не круто...
  
Наверх
www  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #4 - 05. Февраля 2010 :: 11:06
Печать  
Lewkee писал(а) 05. Февраля 2010 :: 10:48:
а почему так? это ж полезная вещь.

Чем полезная?

Lewkee писал(а) 05. Февраля 2010 :: 09:42:
и в этой новой строке незаполненные колонки оказались строками, а не нулями. (обнаружилось при сравнении их с нулем далее в обработке)

Здесь у тебя ошибка в логике.
Из факта ложного сравнения с нулем нельзя делать выводы о типе переменной.

Цитата:
По дефолту колонку считать строкой - как то не круто...

См. предыдущий пп.
Значение ИТ по уполчанию - "Неопределенный тип", точно также, как и любой другой неинициализированной переменной в 1С.

P.S.
Не призываю к дискуссии, скорее предлагаю на пару минут задуматься.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
yudin
Full Member
***
Отсутствует


Краткость - с.т.

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #5 - 05. Февраля 2010 :: 11:39
Печать  
Код
Выбрать все
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку()=1 Цикл
Сообщить(ТипЗначенияСтр(ТЗ.ТвояКолонка))
КонецЦикла;

 


Делать после запросов всяких

Там всегда число? Или в некоторых случаях неопределенный тип/строка или что то еще?

Если то же самое с ИТ - там появляется "неопределенный" где в ТЗ было число?

Сделай ТЗ с нулями без всяких запросов, боюсь там где ты написал про заполнение всяким запросами кроется смена типа.

Нет у ИТ такого глюка.


  

С уваженьем, дата, подпись
Наверх
wwwICQ  
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #6 - 05. Февраля 2010 :: 11:40
Печать  
Ладно. неопределенный тип. Со строкой поторопился.  Нерешительный но это что то меняет? колонке нельзя присвоить конкретный тип. Круглые глаза
а задуматься о чем? о том что можно обойтись этого? да можно, конечно. можно и правое ухо левой рукой почесать  Улыбка
Но продолжаю считать это недостатком индексированной таблицы, это все таки иногда нужно, в частности как в моем случае.
  
Наверх
www  
IP записан
 
Mikeware
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 262
Зарегистрирован: 27. Июля 2006
Пол: Мужской
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #7 - 05. Февраля 2010 :: 11:43
Печать  
Нормальным подходом будет - заполнять таблицу целиком
  
Наверх
ICQ  
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #8 - 05. Февраля 2010 :: 11:44
Печать  
yudin писал(а) 05. Февраля 2010 :: 11:39:
Если то же самое с ИТ - там появляется "неопределенный" где в ТЗ было число?

Ты не так понял.
При загрузке ТЗ в ИТЗ - нули переносятся нулями (число), с этим все норм.
Неопределенным значение становится при добавлении строки в ИТЗ.
  
Наверх
www  
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #9 - 05. Февраля 2010 :: 11:48
Печать  
Mikeware писал(а) 05. Февраля 2010 :: 11:43:
Нормальным подходом будет - заполнять таблицу целиком

Да я понимаю. написал уже, что да, можно и без этого обойтись.
обработку я уже давно поправил, все работает.
Просто заинтересовался, неужели нет такой возможности в Инд.таблице и почему собсно ее нет...
  
Наверх
www  
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #10 - 05. Февраля 2010 :: 12:24
Печать  
Lewkee писал(а) 05. Февраля 2010 :: 11:40:
можно и правое ухо левой рукой почесать  Улыбка

Именно.
Зачем мне регламентировать тебя в том, каким способом ты это будешь делать?

Если же ты сам хочешь заняться самоорганизацией, то в твоем распоряжении все средства ООП в 1cpp.
Что есть тип:
1) значения по умолчанию
2) контроль типов
3) форматирование вывода

Все это, в общем случае индивидуально.
И это твое право реализовать любую схему по собственному желанию.

Цитата:
Но продолжаю считать это недостатком индексированной таблицы, это все таки иногда нужно, в частности как в моем случае.

Не ной. Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #11 - 05. Февраля 2010 :: 12:37
Печать  
kms писал(а) 05. Февраля 2010 :: 12:24:
Не ной. Улыбка

А для чего тогда форумы? Улыбка

Да я уже реализовал)  делаю заполнение ТЗ, и уже заполненную импортирую в ИТЗ, и там махинации уже провожу с группировками.
И душа спокойна)
  
Наверх
www  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #12 - 05. Февраля 2010 :: 12:43
Печать  
Если хочешь заполнить все пустые значения нулем, то можешь сделать индекс по этой колонке, установить фильтр на пустые значения, а затем методом "ЗаполнитьКолонку" заполнить все нулем.

ИТЗ всё делает правильно.
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #13 - 05. Февраля 2010 :: 14:03
Печать  
Надо было просто не лениться и там, где нулевые значения писать
Код
Выбрать все
ИТЗ.Мое_значение=0; 

  
Наверх
ICQ  
IP записан
 
Lewkee
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 29
Зарегистрирован: 26. Февраля 2009
Re: Индексированная таблица. Глюк, или я что-то не понимаю?
Ответ #14 - 05. Февраля 2010 :: 15:01
Печать  
Salimbek писал(а) 05. Февраля 2010 :: 14:03:
Надо было просто не лениться и там, где нулевые значения писать
Код
Выбрать все
ИТЗ.Мое_значение=0; 



ну вот это я и говорю про "левой рукой правое ухо почесать".
Все можно при желании, но лучше когда есть штатные средства.
  
Наверх
www  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать