Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.11;
Скачать: CL | DM;

Вниз

TTable.FindKey находит то, что не находит Locate   Найти похожие ветки 

 
clickmaker ©   (2003-08-21 15:42) [0]

Причем для TFloatField. Т.е., если создать индекс на такое поле, потом выполнить FindKey(Value) - запись найдена. А если индекс не создавать и сказать Locate("FieldName", Value, []) - ни фига не найдено. В чем грабли?


 
Reindeer Moss Eater ©   (2003-08-21 15:44) [1]

В фактических значениях параметров функций.


 
clickmaker ©   (2003-08-21 15:48) [2]

Так они одни и те же. Вот такой код пашет

Table_kadr.AddIndex("I_TAB_N", "TAB_N", []);
Table_kadr.indexname:="I_TAB_N";

if Table_kadr.findkey([table1TAB_N.value]) then
// все Ок


А такой нет

if Table_kadr.Locate("TAB_N", table1TAB_N.AsFloat, []) then
// пусто


Вместо AsFloat ставил Value - та же история


 
clickmaker ©   (2003-08-21 15:58) [3]

Причем, с индексом и Locate начинает находить. Ничё не понимаю... Разве Locate не для того, чтобы искать поля просто по имени, без индексов? Или это чисто DBaseвские заморочки?


 
Desdechado ©   (2003-08-21 16:40) [4]

locate использует индексы, если они есть


 
Johnmen ©   (2003-08-21 16:45) [5]

Все дело в погрешности разрядной сетки.



Страницы: 1 вся ветка

Текущий архив: 2003.09.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
6-33703
Chlavik
2003-07-09 21:54
2003.09.11
Подключения сетевого диска


3-33468
pavel_guzhanov
2003-08-20 13:58
2003.09.11
Картинка из поля BLOB в DBImage


14-33769
вовка
2003-08-21 19:56
2003.09.11
3D рисование


6-33700
s.ts
2003-07-11 16:49
2003.09.11
получение курсов валют центробанка


14-33738
Фомин
2003-08-25 01:16
2003.09.11
Чтение файла