レコード フィールド エクスチェンジ: RFX の使い方

このトピックでは、フレームワークの機能に関連して、RFX を使うために行うことについて説明します。

Note

このトピックの内容は、バルク行フェッチが実装されていない CRecordset から派生したクラスを対象にしています。 バルク行フェッチを使用している場合は、バルク レコード フィールド エクスチェンジ (Bulk RFX) が実装されます。 Bulk RFX は、RFX に似ています。 違いを理解するには、「レコードセット: バルク行フェッチ (ODBC)」を参照してください。

次のトピックには、関連情報が含まれています。

フレームワークによる自動処理に関連する開発者の役割を次の表に示します。

RFX の使用: 開発者とフレームワーク

あなた フレームワークの役割
ウィザードを使ってレコードセット クラスを宣言します。 フィールド データ メンバーの名前とデータ型を指定します。 ウィザードによって、CRecordset クラスの派生、DoFieldExchange オーバーライドの記述 (各フィールド データ メンバーに対する RFX 関数の呼び出しを含む) が自動的に行われます。
(省略可能) 必要なパラメーター データ メンバーをクラスに手動で追加します。 各パラメーター データ メンバーに対して RFX 関数の呼び出しを DoFieldExchange に手動で追加し、パラメーターのグループに対して CFieldExchange::SetFieldType の呼び出しを追加し、m_nParams でパラメーターの合計数を指定します。 「レコードセット: パラメーターを利用したレコードセット (ODBC)」を参照してください。
(省略可能) 追加の列をフィールド データ メンバーに手動でバインドします。 手動で m_nFields をインクリメントします。 「レコードセット: データ列を動的に結びつける方法 (ODBC)」を参照してください。
レコードセット クラスのオブジェクトを構築します。 オブジェクトを使う前に、パラメーター データ メンバーがある場合は、その値を設定します。 効率化のために、フレームワークによって ODBC を使ってパラメーターが事前にバインドされます。 パラメーター値を渡すと、フレームワークからソースにそれらが渡されます。 並べ替えやフィルター文字列が変更されない限り、再クエリに対してパラメーター値のみが送信されます。
CRecordset::Open を使ってレコードセット オブジェクトを開きます。 レコードセットのクエリを実行し、レコードセットのフィールド データ メンバーに列をバインドし、DoFieldExchange を呼び出して最初に選ばれたレコードとレコードセットのフィールド データ メンバーの間でデータを交換します。
CRecordset::Move、メニュー、またはツール バーのコマンドを使ってレコードセット内をスクロールします。 DoFieldExchange を呼び出して、新しい現在のレコードからフィールド データ メンバーにデータを転送します。
レコードの追加、更新、削除を行います。 DoFieldExchange を呼び出して、データ ソースにデータを転送します。

関連項目

レコード フィールド エクスチェンジ (RFX)
レコード フィールド エクスチェンジ: RFX の動作のしくみ
レコードセット: 集計値の計算 (ODBC)
CRecordset クラス
CFieldExchange クラス
マクロ、グローバル関数、およびグローバル変数