MoveBy メソッドの使用
データセット内の移動 への移動
MoveBy メソッドでは、データセットのカーソルを前後に移動させる行数を指定できます。移動は、MoveBy が呼び出されたときの現在のレコードを基準として相対的に行われます。また、MoveBy では、データセットの Bof プロパティと Eof プロパティを適切に設定します。
このメソッドは、移動するレコード数を指定する整数パラメータを受け取ります。正の整数の場合は先に進むことを示し、負の整数の場合は後ろに戻ることを示します。
メモ: 単方向データセットで負の引数を使用して MoveBy メソッドを呼び出すと、例外が発生します。
MoveBy メソッドは移動した行数を返します。データセットの先頭や末尾を超える移動を試みた場合、MoveBy から返される行数は、移動するように要求した行数とは異なります。これは、MoveBy がデータセットの最初のレコードや最後のレコードに達すると、そこで停止するからです。
次のコードでは、CustTable で 2 レコード後ろに戻っています。
CustTable.MoveBy(-2);
CustTable->MoveBy(-2);
メモ: マルチユーザー データベース環境でアプリケーションが MoveBy メソッドを使用する場合は、データセットが流動的であることを忘れないでください。複数のユーザーがデータベースに同時にアクセスし、そのデータを変更すると、先ほどまで 5 レコード後ろにあったレコードが、今は 4 レコード後ろになったり、6 レコードあるいはそれ以上になったりする可能性があります。