26.10.2023, 18:26
|
Новичок
|
|
Регистрация: 18.03.2009
Сообщения: 71
Репутация: 10
|
|
мучение
а так можно или полное ну
Код:
AColumn1 := cxGrid1DBTableView1.GetColumnByFieldName('id');
AColumn2 := cxGrid1DBTableView1.GetColumnByFieldName('name');
AColumn3 := cxGrid1DBTableView1.GetColumnByFieldName('reviews');
AColumn4 := cxGrid1DBTableView1.GetColumnByFieldName('size');
AColumn5 := cxGrid1DBTableView1.GetColumnByFieldName('attribute');
if AColumn1 <> nil then
for I := 0 to cxGrid1DBTableView1.Controller.SelectedRecordCount - 1 do begin
edit10.Text:=(cxGrid1DBTableView1.Controller.SelectedRecords[i].Values[AColumn1.Index]);
edit11.Text:=(cxGrid1DBTableView1.Controller.SelectedRecords[i].Values[AColumn2.Index]);
edit12.Text:=(cxGrid1DBTableView1.Controller.SelectedRecords[i].Values[AColumn3.Index]);
edit13.Text:=(cxGrid1DBTableView1.Controller.SelectedRecords[i].Values[AColumn4.Index]);
edit14.Text:=(cxGrid1DBTableView1.Controller.SelectedRecords[i].Values[AColumn5.Index]);
end;
form1.SqlConnection1.Open;
try
SQLQuery1.SQL.Text := 'UPDATE test1 SET name = :name, reviews = :reviews, size = :size, attribute = :attribute WHERE id = :id';
form1.SqlQuery1.ParamByName('name').AsString := edit11.Text;
form1.SqlQuery1.ParamByName('reviews').AsInteger := strtoint(edit12.Text);// Arews;
form1.SqlQuery1.ParamByName('size').AsInteger := strtoint(edit13.Text); //inttostr(imgsize);
form1.SqlQuery1.ParamByName('attribute').AsString := edit14.Text;
form1.SqlQuery1.ParamByName('id').AsInteger := strtoint(edit10.Text);
SQLQuery1.ExecSQL;
finally
form1.sqlconnection1.Connected:=false;
end;
т.к. я пробовал и
Код:
cxGrid1DBTableView1.DataController.DataModeController.SmartRefresh:=True;
cxGrid1DBTableView1.DataController.DataSource.DataSet.Edit;
cxGrid1DBTableView1.DataController.DataSource.DataSet.FieldByName('id').Value := 444;
cxGrid1DBTableView1.DataController.DataSource.DataSet.post;
руки не от туда ....
|