type
TDummyDBGrid = class(TCustomDBGrid);
——————————————–>>>
procedure TForm1.Button1Click(Sender: TObject);
var
w_print,w_no : Integer;
w_sql : String;
RowCount, RN: Integer;
TopRowRecNo, CurrentRowNo: Integer;
begin
dm.sql_list.DisableControls;
CurrentRowNo := TDummyDBGrid(db_list).Row – 1;
TopRowRecNo := dm.sql_list.RecNo – CurrentRowNo;
if db_list.Fields[11].AsInteger = 0 then w_print := 1
else w_print := 0;
w_no := db_list.Fields[0].AsInteger;
w_sql := ‘UPDATE w_hurikomi_m SET w_hurikomi_m.print_flg = ‘ + IntToStr(w_print);
w_sql := w_sql + ‘ WHERE w_hurikomi_m.sql_no = ‘ + IntToStr(w_no);
with dm.ado_sql do begin
SQL.Clear;
SQL.Add(w_sql);
ExecSQL;
end;
dm.sql_list.Close;
dm.sql_list.Open;
// 指定レコードをTopRowに移動させる処理
RowCount := TDummyDBGrid(db_list).VisibleRowCount;
dm.sql_list.RecNo := TopRowRecNo;
dm.sql_list.MoveBy(RowCount);
while not dm.sql_list.BOF do
begin
RN := dm.sql_list.RecNo;
if RN = TopRowRecNo then
Break
else
dm.sql_list.Prior;
end;
// カーソルを元のカレントレコードに移動させる処理
dm.sql_list.MoveBy(CurrentRowNo);
dm.sql_list.EnableControls;
Result := True;
end;
