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

Вниз

could not convert variant of type (string) into type (double)   Найти похожие ветки 

 
nicky000   (2008-03-26 16:25) [0]

Есть код:
begin
OraQuery1.Active := true;
OraQuery1.First;
while not OraQuery1.Eof do
begin
cxlb.Items.Add(ScrMemo.Text+","+ OraQuery1.FieldValues["NAME"]+","+ OraQuery1.FieldValues["LINKCLIENT"]+","+naEdit.Text);
OraQuery1.Next;
end;

Происходит ошибка при попытке вставить данные из поля LINKCLIENT : could not convert variant  of type (string) into type (double)

Подскажите как это исправить.


 
Сергей М. ©   (2008-03-26 16:29) [1]


> Есть код


> Происходит ошибка


Ошибка не в этом коде, здесь нет ни намека на упомянутую в тексте ошибки конвертацию.


 
nicky000   (2008-03-26 16:29) [2]

в чем ошибка?


 
Сергей М. ©   (2008-03-26 16:34) [3]

в том что некое вариантное значение строкового типа по некоей причине невозможно конвертировать в значение вещ.типа


 
Reindeer Moss Eater ©   (2008-03-26 16:34) [4]

В другом месте


 
Reindeer Moss Eater ©   (2008-03-26 16:37) [5]

В коде нет ничего вещественного.

Где-то повешен какой-нить обработчки типа OnDataChanged.


 
nicky000   (2008-03-26 16:40) [6]

не повешен. Как решить проблему?


 
nicky000   (2008-03-26 16:44) [7]

с полем name все нормально (текстовое), а linkclient - числовое.


 
Сергей М. ©   (2008-03-26 16:44) [8]


> nicky000   (26.03.08 16:40) [6]


Тебе, как помнится, уже был "намек" - воспользоваться встроенным отладчиком.


 
Reindeer Moss Eater ©   (2008-03-26 16:45) [9]

Сначала правильно найти саму проблему. Потом решать.
В приведенном коде нет проблемы.
А вообще работать вот так через варианты (fieldvalues) - лучший способ огрести пободбные баги


 
Reindeer Moss Eater ©   (2008-03-26 16:46) [10]

с полем name все нормально (текстовое), а linkclient - числовое.

Ну вот и приехали.


 
Reindeer Moss Eater ©   (2008-03-26 16:53) [11]

Не, что-то здесь не так.
С чего бы это вариант, участвующий в строковом выражении, приводится к даблу?


 
nicky000   (2008-03-26 16:55) [12]

к чему приехали?


 
Reindeer Moss Eater ©   (2008-03-26 16:56) [13]

К тому, что нет в твоем коде неявного приведения к даблу.


 
Reindeer Moss Eater ©   (2008-03-26 16:59) [14]

Замени FieldValues на AsString и AsFloat


 
nicky000   (2008-03-26 17:00) [15]

да слышала уже. А в чем проблема? Явно, что с типом полей. Все числовые выходят на эту ошибку. Как разрулить?


 
Reindeer Moss Eater ©   (2008-03-26 17:01) [16]

не работай через варианты.


 
Сергей М. ©   (2008-03-26 17:01) [17]


> Как разрулить?


Использовав отладчик.


 
nicky000   (2008-03-26 17:06) [18]

FieldByName("LINKCLIENT").AsString ??


 
Reindeer Moss Eater ©   (2008-03-26 17:12) [19]

можно и так, хотя лучше АsFloat и привести с строке.


 
Anatoly Podgoretsky ©   (2008-03-26 18:24) [20]

> nicky000  (26.03.2008 16:44:07)  [7]

В таком случае ошибка вообще не относится к данному месту.


 
Anatoly Podgoretsky ©   (2008-03-26 18:26) [21]


> хотя лучше АsFloat

Чем же лучше, флоат тогда кто будет преобразовывать?


 
Reindeer Moss Eater ©   (2008-03-26 18:56) [22]

Лучше.
Процессору все равно.
Программе тоже.
Лучше девелоперу. Не забудет реальный тип поля в БД.
Только из этих соображений.



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

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

Наверх




Память: 0.51 MB
Время: 0.019 c
15-1204716527
афоня
2008-03-05 14:28
2008.04.20
рисование графиков в Perl


15-1204886969
Eraser
2008-03-07 13:49
2008.04.20
WinAPI от JEDI


2-1206612850
nicky000
2008-03-27 13:14
2008.04.20
ConnectDialog


15-1204502666
Поп Гапон
2008-03-03 03:04
2008.04.20
А как китайцы набирают текст


2-1206226902
Elec3C
2008-03-23 02:01
2008.04.20
Процедуры