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


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Индексированная таблица как правильно искать стр.?
30. Апреля 2008 :: 11:04
Печать  
У меня есть Индексированная Таблица

Делаю:

ИндексированнаяТаблица.НайтиСтроку("Номенклатура",ТЗ.Номенклатура,0,1)

ТЗ.Номенклатура=Аккумулятор....

ИндексированнаяТаблица.ПолучитьЗначение(2,1)=Аккумулятор.... (тот же аккумулятор)

Но НайтиСтроку возвращает 0... Куда смотреть?

ИТ создается вот так:

ИндексированнаяТаблица=СоздатьОбъект("ИндексированнаяТаблица");
ИндексированнаяТаблица.Загрузить(Остатки);      тии;Партия:Партия","Количество,СуммаРуб,СуммаУпр,СуммаБезНДС");

При чем не находит именно это, остальные позиции находит правильно... Этот аккумулятор в документе не последний и не первый, аккумулятор точно тот же самый...

Что то никак не соображу где именно я туплю Печаль
  

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


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #1 - 30. Апреля 2008 :: 11:12
Печать  
Сделал ДобавитьИндекс("ИНоменклатура","Номенклатура",1) и сделал поиск по индексу, все работает, значит найтистроку() работает только по индексу? Тогда почему он другие значения находит а это нет?
  

С уваженьем, дата, подпись
Наверх
wwwICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #2 - 30. Апреля 2008 :: 11:18
Печать  
Читай доку - в ИТЗ практически все операции работают через индексы, не зря же она называется ИНДЕКСИРОВАННАЯ таблица Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
yudin
Full Member
***
Отсутствует


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #3 - 30. Апреля 2008 :: 11:19
Печать  
Я так предполагал что если индекса нет, поиск будет идти по значению, и он кстати идет - первый раз столкнулся что не находит чтото...
  

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


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #4 - 30. Апреля 2008 :: 11:22
Печать  
А что перед тем как Группировать тоже нужно добавить индекс по каждому полю? И если да, то указывать потом названия индексов?
  

С уваженьем, дата, подпись
Наверх
wwwICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #5 - 30. Апреля 2008 :: 11:23
Печать  
yudin писал(а) 30. Апреля 2008 :: 11:19:
что если индекса нет, поиск будет идти по значению, и он кстати идет - первый раз столкнулся что не находит чтото...

Интересный факт - нужно доку покурить!
Неужели подобный поиск без индекса отмечен в доке, что-то я сомневаюсь Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #6 - 30. Апреля 2008 :: 11:24
Печать  
yudin писал(а) 30. Апреля 2008 :: 11:22:
А что перед тем как Группировать тоже нужно добавить индекс по каждому полю? И если да, то указывать потом названия индексов?

Нет, предварительно индексировать не нужно, индексы добавятся автоматически, но только на первом уровне. Для вложенных таблиц индексы нужно создавать самостоятельно.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
yudin
Full Member
***
Отсутствует


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #7 - 30. Апреля 2008 :: 11:32
Печать  
тогда я совсем ничего не понимаю!


тии;Партия:Партия","Количество,СуммаРуб,СуммаУпр,СуммаБезНДС");

То есть для 1-го уровня индексы создались автоматически.

После этого я делаю НайтиСтроку, по индексу Номенклатура, то есть все правильно делаю, по доке, но не находит, а если сделаю после группировки ДобавитьИндекс("Иноменклатура","Номенклатура"), то работает  Плачущий
  

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



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #8 - 30. Апреля 2008 :: 11:36
Печать  
artbear писал(а) 30. Апреля 2008 :: 11:23:
yudin писал(а) 30. Апреля 2008 :: 11:19:
что если индекса нет, поиск будет идти по значению, и он кстати идет - первый раз столкнулся что не находит чтото...

Интересный факт - нужно доку покурить!
Неужели подобный поиск без индекса отмечен в доке, что-то я сомневаюсь Улыбка


artbear
А, НайтиСтроку(Индекс, Ключ, [чНайтиПоследнюю = 0], [чСпозиционироваться = 0])

Индекс может быть ""(по умолчанию), все равно находить должен  Озадачен
  
Наверх
 
IP записан
 
yudin
Full Member
***
Отсутствует


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #9 - 30. Апреля 2008 :: 11:42
Печать  
Ну видимо чтобы воспользоваться индексом по умолчанию, надо и указать имя "", а я туда написал имя колонки, но так как до этого я сделал группировать, по идее индекс уже есть, имя которого совпадает с именем колонки...
  

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


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #10 - 30. Апреля 2008 :: 12:06
Печать  
В общем зря я затеял мороку с этим классом Печаль

Метод Группировать работает как то не так как я ожидал.

Таблица до группировки:

Автопровод ПГВА (0,75мм) коричневый 14.12.06 А0000005 260
Аккумулятор 6СТ- 75 ИСТА залитый 18.12.05 А0000014 1
Аккумулятор 6СТ- 75 ИСТА залитый 24.03.06 А0000018 3
Аккумулятор 6СТ- 75 ИСТА залитый 30.03.06  1
Аккумулятор 6СТ- 75 ИСТА залитый 26.05.06 А0000022 4
Аккумулятор 6СТ- 75 ИСТА залитый 02.06.06 А0000023 1
Аккумулятор 6СТ- 75 ИСТА залитый 02.06.06 А0000025 3
Аккумулятор 6СТ- 75 ИСТА залитый 05.06.06 А0000026 1
Аккумулятор 6СТ- 75 ИСТА залитый 10.06.06 А0000027 1
Аккумулятор 6СТ- 75 ИСТА залитый 04.07.06 А0000028 1
Аккумулятор 6СТ- 75 ИСТА залитый 07.07.06 А0000029 1
Аккумулятор 6СТ- 75 ИСТА залитый 17.07.06 А0000030 3
Аккумулятор 6СТ- 75 ИСТА залитый 16.08.06 А0000031 1
Аккумулятор 6СТ- 75 ИСТА залитый 30.08.06 А0000032 2
Аккумулятор 6СТ- 75 ИСТА залитый 15.09.06 А0000033 6
Аккумулятор 6СТ- 75 ИСТА залитый 19.12.06 А0000037 10
Аккумулятор 6СТ- 75 ИСТА залитый 02.02.07 А0000043 10
Аккумулятор 6СТ- 75 ИСТА залитый 16.03.07 А0000044 5
.... пошло дальше много строк

Значения СуммаРуб,СуммаУпр,СуммаБезНДС опущены, чтобы много не писать...

Таблица после группировки:

тии;Партия:Партия","Количество,СуммаРуб,СуммаУпр,СуммаБезНДС");


Автопровод ПГВА (0,75мм) коричневый 14.12.06 А0000005 260
Аккумулятор 6СТ- 75 ИСТА залитый 18.12.05 А0000014 1
Аккумулятор 6СТ- 75 ИСТА залитый 24.03.06 А0000018 53
... пошли дальше строки

Ведь должен же был свернуть он эти строки...
  

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


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #11 - 30. Апреля 2008 :: 12:09
Печать  
Ура. Сделал так:

аПартии;МИПартия:Партия","Количество,СуммаРуб,СуммаУпр,СуммаБезНДС");

В вроде заработало... Нельзя использовать в качестве имени индекса имя колонки?
  

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


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

Сообщений: 131
Местоположение: Ростов - на - Дону
Зарегистрирован: 25. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #12 - 30. Апреля 2008 :: 12:18
Печать  
не, не заработало.... Точнее сработало только один раз. Перед группировкой еще отсортировать видимо надо....  Тогда уже раза 3 сработало... [не бывает смайликов, могущих выразить мое настроение]
  

С уваженьем, дата, подпись
Наверх
wwwICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #13 - 30. Апреля 2008 :: 12:35
Печать  
yudin писал(а) 30. Апреля 2008 :: 12:18:
не, не заработало.... Точнее сработало только один раз. Перед группировкой еще отсортировать видимо надо....  Тогда уже раза 3 сработало... [не бывает смайликов, могущих выразить мое настроение]

Перед группировкой можно не выполнять ни сортировку, ни индексацию.
Подробнее насчет одного раза и 3 раз ?
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Индексированная таблица как правильно искать с
Ответ #14 - 30. Апреля 2008 :: 12:36
Печать  
artbear писал(а) 30. Апреля 2008 :: 11:24:
yudin писал(а) 30. Апреля 2008 :: 11:22:
А что перед тем как Группировать тоже нужно добавить индекс по каждому полю? И если да, то указывать потом названия индексов?

Нет, предварительно индексировать не нужно, индексы добавятся автоматически, но только на первом уровне. Для вложенных таблиц индексы нужно создавать самостоятельно.

Еще раз вчитайся в мою фразу Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать