Ich übertrage eine Access-Benutzeranwendung von der Verwendung nativer Access-Tabellen auf die Verwendung von ODBC-verknüpften SQL Server-Tabellen.Warum funktioniert dieser Dropdown-Filter für eine native Tabelle, aber nicht für eine ODBC-verknüpfte Tabelle?
Ich habe eine Reihe von Formularen, die durch eine Auswahl aus einem Dropdown (in einem eigenständigen Auswahlformular) gefiltert werden. Wenn der Benutzer das Dropdown-Feld leer lässt, wird das Formular standardmäßig ungefiltert gestartet.
Das alles arbeitet mit den nativen Tabellen, aber wenn ich es versuchen, die verknüpften Tabellen ich ein ODBC--call failed
Fehler
Die SQL-Abfrage Zugriff erzeugt für die Abfrage verwende ich als Datenquelle des Formulars erhalten mit das ist gefiltert ist:
SELECT linked.ASSIGNED_CARE_COORDINATOR, [rest of the variables]
WHERE (((linked.ASSIGNED_CARE_COORDINATOR)=[Forms]![frmCoord_Selector]![cmbCoords]))
OR (((([linked].[ASSIGNED_CARE_COORDINATOR])
Like [Forms]![frmDeadline_Report_Coord_Selector]![cmbCoords]) Is Null));
Ich weiß, dass die ODBC-Verbindung selbst in Ordnung ist; Wenn ich den Code nach OR
entferne, arbeitet die Abfrage mit der verknüpften Tabelle, hat aber natürlich nicht die show-all-if-null-Funktionalität.
Warum sollte dies mit einer nativen Tabelle funktionieren, aber nicht mit der verknüpften Version der exakt gleichen Tabelle?
Bitte geben Sie eine * Abfrage an, die dem Filter zugrunde liegt *. Ist diese Abfrage eine Formular-Records-Quelle, die Steuerquelle eines Dropdown-Felds, ein VBA-Recordset oder ein anderes? Außerdem ist die Logik von "OR" unklar, da Sie scheinbar zwei Ausdrücke kombinieren: 'LIKE' und' IS NULL'. Hast du das hier richtig kopiert? – Parfait
@Parfait die Abfrage ist die Form Datensatzquelle (hinzugefügt, dies ist auch Fragetext). Ich habe die Kopie überprüft, es ist richtig. – Rominus