Datensatzfeldaustausch: Verwenden von RFX
In diesem Thema wird erläutert, was Sie tun müssen, um RFX zu verwenden, und welche Rolle das Framework dabei spielt.
Hinweis |
---|
Dieses Thema bezieht sich auf von CRecordset abgeleitete Klassen, in denen der gesammelte Zeilenabruf nicht implementiert wurde.Beim gesammelten Abrufen von Zeilen wird der Sammel-Datensatzfeldaustausch (Bulk-RFX) implementiert.Der Bulk-RFX ist mit RFX vergleichbar.Unter Recordset: Abrufen von Datensätzen in einer Sammeloperation (ODBC) werden die Unterschiede erläutert. |
Die folgenden Themen enthalten verwandte Informationen:
Datensatzfeldaustausch: Arbeiten mit Assistenten-Code enthält eine Einführung in die Hauptkomponenten von RFX sowie eine Erläuterung des Codes, den der MFC-Anwendungs-Assistent und Klasse hinzufügen (wie unter Hinzufügen eines MFC-ODBC-Consumers beschrieben) zur Unterstützung von RFX erstellen, und erläutert, wie der Assistentencode geändert werden kann.
Datensatzfeldaustausch: Verwenden der RFX-Funktionen erläutert, wie Sie in der überschriebenen DoFieldExchange-Version RFX-Funktionen aufrufen.
Die folgende Tabelle zeigt, welche Aufgaben von Ihnen durchgeführt werden müssen und welche vom Framework durchgeführt werden.
Verwenden von RFX: Interaktion mit dem Framework
Benutzer |
Framework |
---|---|
Sie deklarieren die Recordset-Klassen mit einem Assistenten.Sie geben die Namen und Datentypen der Felddatenmember an. |
Der Assistent leitet eine CRecordset-Klasse ab und fügt eine überschriebene Version von DoFieldExchange ein, die für jeden Felddatenmember einen RFX-Funktionsaufruf enthält. |
(Optional) Sie fügen der Klasse manuell die benötigten Parameterdatenmember hinzu.Sie fügen manuell für jeden Parameterdatenmember einen RFX-Funktionsaufruf für DoFieldExchange und für die Parametergruppe einen Aufruf für CFieldExchange::SetFieldType hinzu. Geben Sie danach die Gesamtzahl der Parameter in m_nParams an.Siehe Recordset: Parametrisieren eines Recordsets (ODBC). |
|
(Optional) Sie binden von Hand zusätzliche Spalten an Felddatenmember.Sie erhöhen m_nFields manuell.Siehe Recordset: Dynamisches Binden von Datenspalten (ODBC). |
|
Sie erstellen ein Objekt der Recordset-Klasse.Bevor Sie das Objekt verwenden, stellen Sie bei Bedarf die Werte der zugehörigen Parameterdatenmember ein. |
Aus Effizienzgründen führt das Framework mithilfe von ODBC eine Vorbindung der Parameter durch.Wenn Sie Parameterwerte übergeben, gibt das Framework diese an die Datenquelle weiter.Bei Neuabfragen sendet das Framework lediglich die Parameterwerte, es sei denn, die Sortier- und/oder Filterzeichenfolgen hätten sich geändert. |
Sie öffnen ein Recordset-Objekt mit CRecordset::Open. |
Das Framework führt die Abfrage des Recordsets aus, bindet Spalten an Felddatenmember des Recordsets und ruft DoFieldExchange auf, um Daten zwischen dem ersten ausgewählten Datensatz und den Felddatenmembern des Recordsets zu übertragen. |
Sie scrollen durch das Recordset mit CRecordset::Move oder über einen Menü- oder Symbolleistenbefehl. |
Ruft DoFieldExchange auf, um Daten aus dem neuen aktuellen Datensatz in die Felddatenmember zu übertragen. |
Fügt Datensätze hinzu, aktualisiert oder löscht diese. |
Das Framework ruft DoFieldExchange auf, um Daten zur Datenquelle zu übertragen. |
Siehe auch
Referenz
Makros, globale Funktionen und globale Variablen
Konzepte
Datensatzfeldaustausch: Funktionsweise von RFX
Recordset: Abrufen von Summen und anderen Aggregatergebnissen (ODBC)