Umfragen und Multiple-Choice-Tests - Teil 3

Richtige Antworten den Benutzerantworten gegenüberstellen

Die Grundlage ist eine Abfrage, die zunächst einmal die definierten Antworten den vom Benutzer gegebenen Antworten gegenüberstellt. Dazu erstellen Sie eine Auswahlabfrage mit den beiden Tabellen tabErgebnisse und tabAntworten. In dieser Abfrage geben Sie die Felder tabAntworten.ID, tabAntworten.Frage, tabAntworten.Antwort, tabAntworten. Wert, tabErgebnisse.Antwort, tabErgebnisse. Benutzer aus. Die Ergebnisse der Abfrage sollten Sie nach den Feldern Frage und Antworten aufsteigend sortieren.

Wichtig sind dann noch das Filterkriterium und die Verknüpfungseigenschaften. Zunächst benötigen Sie dazu eine Beziehung zwischen dem Feld ID der Tabelle tabAntworten und dem Feld Antwort der Tabelle tabErgebnisse. Da in der Tabelle tabErgebnisse nur die Antworten gespeichert sind, die der Benutzer für die Frage aktiviert hat, nicht aber die nicht aktivierten Antworten, müssen Sie nun mit entsprechenden Verknüpfungseigenschaften dafür sorgen, dass alle Datensätze der Tabelle tabAntworten angezeigt werden und nur die Datensätze der Tabelle tabErgebnisse, die diesen zugeordnet werden können. Dazu aktivieren Sie für die Verknüpfungseigenschaften die zweite Option.

Da nur die Datensätze des aktuellen Benutzers ausgewertet werden sollen, müssen Sie nun die Datensätze noch nach Benutzer einschränken. Das erreichen Sie durch den Kriteriumsausdruck CurrentUser() or IstNull im Feld Benutzer. Wichtig ist, dass Sie nicht nur die Datensätze anzeigen lassen, die im Feld Benutzer den aktuellen Benutzername stehen haben, sondern auch die, die hier keinen Wert enthalten. Das sind nämlich die möglichen Antworten, die der Benutzer nicht gewählt hat, und auch darin kann ja ein Fehler liegen.