テーブルの同期
クエリ タイプのデータセットの使用 への移動
同じデータベース テーブルを表してはいるものの、データ ソース コンポーネントを共有していないデータセットが複数ある場合、各データセットには、データに関するビューと現在のレコードが独自に存在します。ユーザーが各データセットを通じてレコードにアクセスするとき、それらのコンポーネントの現在のレコードはそれぞれ異なります。
データセットが、すべて TTable のインスタンス、すべて TIBTable のインスタンス、すべてクライアント データセットのどちらかである場合は、GotoCurrent メソッドを呼び出すことにより、これらの各データセットの現在のレコードを強制的に同じにすることができます。GotoCurrent では、それ自身のデータセットの現在のレコードを、一致するデータセットの現在のレコードと同じにします。たとえば、次のコードでは、CustomerTableOne の現在のレコードを CustomerTableTwo の現在のレコードと同じになるように設定しています。
CustomerTableOne.GotoCurrent(CustomerTableTwo);
CustomerTableOne->GotoCurrent(CustomerTableTwo);
ヒント: アプリケーションでこのようにデータセットを同期させる必要がある場合は、それらのデータセットをデータ モジュールに入れ、そのデータ モジュールのユニットを、テーブルにアクセスする各ユニットの uses 句に追加します。
別々のフォームにあるデータセットを同期させる場合は、一方のフォームのユニットをもう一方のフォームの uses 句に追加し、少なくとも一方のデータセット名をそのデータセットのフォーム名で修飾する必要があります。次に例を示します。
CustomerTableOne.GotoCurrent(Form2.CustomerTableTwo);
CustomerTableOne->GotoCurrent(Form2->CustomerTableTwo);