Форум: "Начинающим";
Текущий архив: 2008.04.20;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.042 c