Dblookupcombobox

VahaC

Well-known member
10.01.2007
116
0
#1
Как получить значание выбраное в DBLookupComboBox пробовал DBLookupComboBox1.KeyValue но програма выбрасывает ошибку

код приведён ниже

DataModule1.manufFilterQuery.Active:=false;
DataModule1.manufFilterQuery.SQL.Clear;
DataModule1.manufFilterQuery.SQL.Add('SELECT *');
DataModule1.manufFilterQuery.SQL.Add('FROM manufacter_table');
DataModule1.manufFilterQuery.SQL.Add('WHERE id_type='''
+DBLookupComboBox1.KeyValue+'''');
DataModule1.manufFilterQuery.Active:=true;
 
B

Barmutik

#2
KeyValue чудесно работает .. НО тоьлко если в комбобоксе что-тоывбрано .. поэтому перед тем как к нему обращаться стоит проверить not VarIsNull(DBLookupComboBox1.KeyValue) и уж только потом обращаться...
 

VahaC

Well-known member
10.01.2007
116
0
#3
как только что нибудь выбрать в том выпадающем списке дельфы сразу выбрасывает ошибку (Project VCService.exe raised exception class EVariantTypeCastError with message 'Could not convert variant of type (String) into type (Double) '. Process stopped. Use Step or Run to continue.)

а до етого всё в порядке так что зачем ета проверка не пойму
 
B

Barmutik

#4
Ну так почитайте что Вам ошибка говорит .. Вы пытаетесь KeyValue - вариант стринговоготипа конвертнуть где-то в число.. Вот и ошибка ..

Неужель по коду трудно посмотреть ?
 

VahaC

Well-known member
10.01.2007
116
0
#5
А как мне тогда быть если поле id_type в базе является целочисельным типом
то есть как тогда правильно запрос построить
 
B

Barmutik

#6
Я Вам в другой теме уже ответил на этот вопрос ...