Поиск По Базе, Locate

  • Автор темы MMihan
  • Дата начала
M

MMihan

#1
Доброго времени суток!

Кликая по строке в Dbgrid Открываться Форма с Edit ами, если в поле 'Закрыто' True (1) булево значение, условие выполняется , то Edit ы надеются редактироваться.

в MSSQL Тип данных в поле 'Закрыто' Булево... если cделать запрос то отображается '1' ,в Dbgrid отображается как 'True ' запись в поле 'Закрыто' чекбоксом
Код:
mform.ADOTable1.FieldByName('Закрыта').AsBoolean:=true;
не помогу понять что не так .. пробовал разными вариантами
пробовал в KeyValues и Труе и 1

Почему то всегда ((((, выполняется "ShowForm.Edit2.ReadOnly:=true; "

Код:
procedure TMform.DBGrid1DblClick(Sender: TObject);

begin

ADOQuery1.Close; {деактивируем запрос в качестве одной из мер предосторожности}
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('Select Закрыта');
ADOQuery1.SQL.Add('from Клиент');
ADOQuery1.SQL.Add('Where Закрыта = True')
ADOQuery1.Open;

if ADOQuery1.Locate('Закрыта',True,[]) then begin

ShowForm.Edit2.ReadOnly:=true;
....
end
else
ShowForm.Edit2.ReadOnly:=false;
....

begin
Showform.EDIT1.Text := DBGrid1.DataSource.DataSet.FieldByName('КЛ').AsString;
Showform.EDIT12.Text := DBGrid1.DataSource.DataSet.FieldByName('ФИО').AsString;
.......
showForm.ShowModal;
end
end;

Может какнибудь по другому решить это?