Цитата:
Сообщение от Aristarh Dark
Код в студию.
|
Сразу скажу, форма через которую редактирую инфу, использую и для добавления, поэтому она называется frmAddClient
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | procedure TForm1 . DBGrid1DblClick(Sender: TObject);
var uid: Integer ;
modal: TModalResult;
begin
uid := DBGrid1 . DataSource . DataSet . Fields[ 0 ].AsInteger;
ADOQuery2 . Close;
ADOQuery2 . SQL . Clear;
ADOQuery2 . SQL . Add( 'SELECT * FROM tbl_names WHERE uid=:uid' );
ADOQuery2 . Parameters . ParamByName( 'uid' ).Value := uid;
ADOQuery2 . Open;
frmAddClient := TfrmAddClient . Create(frmAddClient);
frmAddClient . edtNameClient . Text := ADOQuery2 . FieldByName( 'name' ).AsString;
modal := frmAddClient . ShowModal;
if modal = mrYes then begin
ADOQuery2 . Close;
ADOQuery2 . SQL . Clear;
ADOQuery2 . SQL . Add( 'UPDATE tbl_names SET name=:name WHERE uid=:uid' );
ADOQuery2 . Parameters . ParamByName( 'uid' ).Value := uid;
ADOQuery2 . Parameters . ParamByName( 'name' ).Value := frmAddClient . edtNameClient . Text;
try ADOQuery2 . ExecSQL except
on E:EDatabaseError do
ShowMessage(E . Message);
end ;
ADOQuery1 . Close;
ADOQuery1 . Open;
ADOQuery1 . Refresh;
end ;
end ;
|
Последние действия привязал к кнопке. Так вот, если раз 5 ткнуть по кнопке, то данные обновляются, а так ничего не обновляется.... :-((((
PS: О положении курсора пока не заморачиваюсь, но если покажете как его "сохранить", буду очень благодарен...