Вниз
Скачать: CL | DM;

Проблемы с Locate   Найти похожие ветки 

← →
Ильдар   (2002-07-15 17:03) [0]

ResOutput.Locate("Скважина; ИмяМетодики", VarArrayOf([OilName ,DM.QResOutput.FieldByName("ИмяМетодики").AsString]), [])
Почему без указания "Скважина" и соответственно OilName эта команда работает, а с ними нет? Поле "Скважина" в таблице есть, OilName формируется правильно.


← →
fool ©   (2002-07-15 17:16) [1]

Что значит "не работает", не находит или ругается (и как если ругается)?


← →
Ильдар   (2002-07-15 17:30) [2]

Locate возвращает FALSE


← →
BAY ©   (2002-07-15 17:45) [3]

Скважена какого типа в Access? Подозреваю, что int.


← →
Lola ©   (2002-07-15 17:48) [4]

А есть ли запись со значением поля "Скважина" равным OilName (это видимо какая-то переменная?). Если есть, возможно что где-то в значениях поля или переменной перепутан русский и англ.регистры. И может стоит в опциях поиска поставить loCaseInsensitive.


← →
fool ©   (2002-07-15 17:51) [5]

Есль false, то работает - не нашло просто...
Значит в поле "Скважина", в результате выполнения ResOutput нет значения равного OilName


← →
fool ©   (2002-07-15 17:53) [6]

Да, и как заметил(а) Lola, укажи опцию поиска


← →
Ильдар   (2002-07-15 17:56) [7]

>BAY тип - string


← →
BAY ©   (2002-07-15 17:58) [8]

>Ильдар, ну тогда см. Lola и fool


← →
Ильдар   (2002-07-15 18:01) [9]

Извините, неправильно осписал симптомы.
Locate игнорирует остальные поля (я указал только ИмяМетодики), т.е. устанавливает курсор на первую же запись. Почему?


← →
fool ©   (2002-07-15 18:18) [10]

Не смотри на какую запись курсор стал, а смотри что возвращает(True or False). Но поскоку Locfte не ругается, то ставлю диагноз :0) повнимательней с параметрами Locate, видимо хочешь найти то чего в запросе не содержится...


← →
Ильдар   (2002-07-15 18:22) [11]

>fool я в таблице ищу а не в запросе, и там все что ищу есть, но она при поиске смотрит только на одно условие (скважина)


← →
fool ©   (2002-07-15 18:42) [12]

>Ильдар я в таблице ищу а не в запросе, и там все что ищу есть, но она при поиске смотрит только на одно условие (скважина)

Не в таблице, а в наборе данных, набор данных возвращает некий компонент получения етих данных(TTable, TQuery ...), вот в етом наборе ты и ишешь а не в таблице. Я тебе все к тому, что подключи(если не подключен) к набору данных грид хотя бы, и посмотри в нем (гриде), если нужные данные есть, а Locate их не находит, то внимательно проверь параметры Locate.


← →
Lola ©   (2002-07-15 19:19) [13]

Locate "смотрит" те условия, которые ты задал. Никаких отсебятин не бывает. Ты проверь себя, какой SELECT формирует данные QResOutput. Это во-первых, во-вторых, проверь еще раз правильность формирования значения OilName. Locate еще никого не обманывал :)


← →
Anatoly Podgoretsky ©   (2002-07-15 19:46) [14]

Кроме случая порущенных индексов, но это уже не Locate


← →
Ильдар   (2002-07-16 15:28) [15]

Еще раз привожу код
DM.ResOutput.Locate("Скважина; ИмяМетодики; "+MetSelect, VarArrayOf([OilName, DM.QResOutput.FieldByName("ИмяМетодики").AsString, DM.QResOutput.FieldByName(MetSelect).AsFloat]), []);

OilName: string; //формируется правильно
может с OilName что-нибудь сделать? а то уже не знаю как быть.


← →
Ильдар   (2002-07-16 17:44) [16]

Может OilName: string как-нибудь преобразовать надо?


← →
sniknik ©   (2002-07-16 17:59) [17]

Не надо. Лутше попробуй все лишнее убрать и оставь только Скважина и OilName. Скорей всего это найдет. а ты путаешся и ишеш то чего нет.



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.012 c
3-23909
Doctor
2002-07-18 10:21
2002.08.08
HELP! HELP!


6-24164
XobbuT
2002-05-25 19:54
2002.08.08
Уважаемые Мастера, помогите с вопросом: Как отловить входящие пак


14-24175
Sour
2002-07-11 14:15
2002.08.08
Почтовый ящик


3-23887
AFROLOV
2002-07-16 15:22
2002.08.08
Как изменить порядок отображения записей в DBGRID


1-23987
hitek
2002-07-27 18:01
2002.08.08
Можно ли в делфи сделать программу с расширением *.bat?




   Наверх