Data.DB.TDataSet.MoveBy

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

function MoveBy(Distance: Integer): Integer; virtual;

C++

virtual int __fastcall MoveBy(int Distance);

プロパティ

種類 可視性 ソース ユニット
function public
Data.DB.pas
Data.DB.hpp
Data.DB TDataSet

説明

データセット内のアクティブレコードに相対する別のレコードに移動します。

MoveBy メソッドを呼び出すと,Distance によって指定されたレコード数だけアクティブレコードを移動できます。Distance が正の値である場合は,データセット内を次に進みます。Distance が負の値である場合は前に戻ります。たとえば,次の文では,データセット内を 10 レコード分前に戻ります。



MoveBy(-10);



DataSet1->MoveBy(-10);



MoveBy はアクティブレコードに対する変更をすべて登録し,次の処理を実行します。

Bof プロパティ,および Eof プロパティを false に設定します。

Distance が正の値の場合は,可能ならば Distance 以降のレコードを繰り返し取得し,最後に取得したレコードをアクティブにします。ファイルの最後を超える移動を試みると,MoveByEof を true に設定します。

Distance が負の値の場合は,可能ならば前にある適切な数のレコードを繰り返し取得し,最後に取得したレコードをアクティブにします。ファイルの先頭を超える移動を試みると,MoveByBof を true に設定します。データセットが単方向の場合,データセットは,MoveBy が前にあるレコードを取り出そうとしたときに EDatabaseError 例外を生成します。

データベース対応コントロールおよびリンクされているデータセットが更新されるようにレコード変更についての情報をブロードキャストします。

移動したレコード数を返します。ほとんどの場合,Result は Distance の絶対値になります。ただし,MoveBy が Distance 分のレコードを移動する前にファイルの先頭または最後に到達した場合は,Result の値は Distance の絶対値より小さい値になります。

関連項目